数据库SQL语言学习----左外连接,右外连接,外连接,自然连接的形象对比
作者:互联网
现在有两张表,一张Student
另一张Score
1、查询每个学生及其选修课程的情况;
自然连接,Sno在Cscore中找不到就不显示,Cno在Cscore中找不到也不显示
SELECT Student.*,Score.* FROM Student,Score WHERE Student.Sno=Score.Sno;
2、查询每个学生及其选修课程的情况; (包括没有选修课程的学生);
学生的Sno在Score中没有时,则课程Cscore补上NULL。
左外连接,以左Student为主,不足补NULL。
SELECT * FROM Student LEFT OUTER JOIN Score ON (Student.Sno = Score.Sno);
3、查询每个学生及其选修课程的情况; (包括没有学生选的选修课程);
课程的Cno在Student中没有出现过,那么,相关列的Sno补齐NULL。
右外连接,以右Score为主,不足补NULL。
SELECT * FROM Student RIGHT OUTER JOIN Score ON (Student.Sno = Score.Sno);
4、查询每个学生及其选修课程的情况;(包括没有学生选的选修课程,包括没有选修课程的学生)
外连接,Sno在Cscore中找不到就补齐NULL,Cno在Cscore中找不到也补齐NULL。
SELECT * FROM Student FULL OUTER JOIN Score ON (Student.Sno = Score.Sno);
标签:左外,Sno,右外,Score,课程,Student,选修,NULL,连接 来源: https://www.cnblogs.com/caiyishuai/p/10762313.html