select * from t_class_info as c;
id gradeid classid year createtime updatetime
1 一年级 一班 2018
2 二年级 一班 2018
3 三年级 一班 2018
4 四年级 一班 2018
5 五年级 一班 2018
6 六年级 一班 2018
7 七年级 一班 2018
8 八年级 一班 2018
9 九年级 一班 2018
10 一年级 二班 2018 0000-00-00 00:00:00 0000-00-00 00:00:00
11 二年级 二班 2018 0000-00-00 00:00:00 0000-00-00 00:00:00
12 三年级 二班 2018 0000-00-00 00:00:00 0000-00-00 00:00:00
13 四年级 二班 2018 0000-00-00 00:00:00 0000-00-00 00:00:00
14 五年级 二班 2018 0000-00-00 00:00:00 0000-00-00 00:00:00
15 六年级 二班 2018 0000-00-00 00:00:00 0000-00-00 00:00:00
16 七年级 二班 2018 0000-00-00 00:00:00 0000-00-00 00:00:00
17 八年级 二班 2018 0000-00-00 00:00:00 0000-00-00 00:00:00
18 九年级 二班 2018 0000-00-00 00:00:00 0000-00-00 00:00:00
select * from t_user_info as u;
id cardno name sex age birth gradeid
1 111 111 1 12 2018-07-31 17:17:53 2
2 222 222 0 15 2018-07-31 17:17:59 2
3 333 333 1 15 2018-07-31 17:18:02 3
4 555 444 1 16 2018-07-31 17:18:10 3
5 444 555 1 15 2018-07-31 17:18:04 3
6 666 666 0 14 2018-07-31 17:18:07 1
7 777 777 1 18 2018-07-31 17:18:12 1
8 888 888 1 23 2018-07-31 17:49:45
-- 左表全纪录+连接相等记录
select * from t_user_info as u left join t_class_info as c on c.id=u.gradeid; -- 右表全纪录+连接相等记录
select * from t_user_info as u right join t_class_info as c on c.id=u.gradeid; select * from t_class_info as c right join t_user_info as u on c.id=u.gradeid;
select * from t_class_info as c left join t_user_info as u on c.id=u.gradeid; -- 连接相等记录
select * from t_user_info as u inner join t_class_info as c on c.id=u.gradeid; -- MySQL不支持这种写法,Oracle才支持
-- select * from t_user_info as u full join t_class_info as c on c.id=u.gradeid;