,别人问我一个问题:数据库中的左连接和右连接有什么区别?如果有A,B两张表,A表有3条数据,B表有4条数据,通过左连接和右连接,查询出的数据条数少是多少条?多是多少条?
我被这个问题问住了,后来我去问了数据库开发人员,结果结果各种各样:
a 大12 小0
b 大12 小未知
c 大未知 小为3
d 大12 小为3
e 不清楚
1、说明
(1)左连接:只要左边表中有记录,数据能检索出来,而右边有
的记录必要在左边表中有的记录才能被检索出
一.外连接
1.left join
示例:SQL语句:select * from student left join course on student.ID=course.ID
左外连接包含left join左表所有行,如果左表中某行在右表没有匹配,则结果中对应行右表的部分全部为空(NULL).
2.右连接 right join 或 right outer join
SQL语句:select * from student right join course on
两张表,A表中的记录B表中不一定有。
左连接:关注左边,右边没有就为空。
右连接:关注右边,左边没有就为空。
内连接:返回交集
例如:
student表s
id
name
age
class_id
1
yang
22
1
2
su
20
1
3
fan
20
2
4
li
30
2
5
luo
22
class表c
id
name
total
1
大一
30
2
大二
15
3
大三
40
在上面的表中,s表中的5号