xp9802 发表于 2013-1-29 21:54:57

左,右和全连接总结

内连接:INNERJOIN或者JOIN,把两个表中数据对应的数据查出来。
外连接:OUTERJOIN,以某个表为基础把对应数据查出来,分为左外连接和右外连接。
左外连接:LEFTJOIN或者LEFTOUTERJOIN,以某个表为基础把对应数据查出来。
右外连接:RIGHTJOIN或者RIGHTOUTERJOIN,以某个表为基础把对应数据查出来。
全连接:FULLJOIN,以多个表为基础

student表
NOName
1a
2b
3c
4d

grade表
NOGrade
190
298
395
590

内连接:查找条件中对应的数据,no4没有数据不列出来
语法:select * from student inner join grade on student.no = grade.no
结果:
NONameNOGrade
1a190
2B298
3c395

左连接:左表中所有数据,右表中对应数据
语法:select * from student left join grade on student.no = grade.no
结果:
NONameNOGrade
1a190
2B298
3c395
4D

右连接:右表中所有数据,左表中对应数据
语法:select * from student right join grade on student.no = grade.no
结果:
NONameNOGrade
1a190
2B298
3c395
590


全连接
语法:select * from student full join grade on student.no = grade.no
结果:
no name grade
1 a 90
2 b 98
3 c 95
4 d
1 a 90
2 b 98
3 c 95

注:access 中不能直接使用full join ,需要使用union all 将左连接和右连接合并后才可以
页: [1]
查看完整版本: 左,右和全连接总结