SQL连接查询
等值连接
连接运算符为"="
--查询每个学生以及其选修课程的情况
SELECT Studnt.*,SC.*
FROM Student,SC
WHERE Student.Sno=SC.Sno;
自身连接
- 一个表与自己进行连接,是一种特殊的连接
- 需要给表起别名来全部
- 由于所有属性名都是同名属性,因此必须使用别名前缀
--查询每一个门课的直接先修课的名称
SELECT FIRST.Cname,SECOND.Cname
FROM Course FIRST,Course SECOND
WHERE FIRST.Cpno = SECOND.Cno;
外连接

--左连接可以输出左边表不符合条件的元组
SELECT Student.Sno,Sname,Ssex,Sage,Sdept,Cno,Grade
FROM Student LEFT OUTER JOIN SC ON (Student.Sno=SC.Sno)
--From Student RIGHT OUTER JOIN SC ON (Student.Sno=SC.Sno) 右连接格式
多表连接
两个以上的表进行连接
--查询每个学生的学号,姓名,选修的课程名以及成绩
SELECT Student.Sno,Sname,Cname,Grade
FROM Student,SC,Course
WHERE Student.Sno = SC.Sno
AND SC.Cno=Course.Cno;

浙公网安备 33010602011771号