四、外连接( Outer join) 外连接与普通连接的区别 普通连接操作只输出满足连接条件的元组 外连接操作以指定表为连接主体,将主体表 中不满足连接条件的元组一并输出
四、外连接(Outer Join Outer Join ) z 外连接与普通连接的区别 – 普通连接操作只输出满足连接条件的元组 – 外连接操作以指定表为连接主体,将主体表 中不满足连接条件的元组一并输出
外连接(续) 「例]查询每个学生及其选修课程的情况包括没有 选修课程的学生--用外连接操作 SELECT Student Sno, Sname, ssex, Sage, Sdept, Cno, Grade FROM Student, sC WHERE Student. no=SC Sno()
外连接(续) [例] 查询每个学生及其选修课程的情况包括没有 选修课程的学生----用外连接操作 SELECT Student.Sno,Sname,Ssex, Sage,Sdept,Cno,Grade FROM Student,SC WHERE Student.Sno = SC.Sno(*);
外连接(续) 结果: Student sno Sname Sdept Cno Grade 95001李勇男20CS192 95001李勇男20CS285 95001李勇男20C388 95002刘晨女19290 95002刘晨女19s380 95003王敏女18MA 95004张立男19IS
外连接(续) 结果: Student.Sno Sname Ssex Sage Sdept Cno Grade 95001 李勇 男 20 CS 1 92 95001 李勇 男 20 CS 2 85 95001 李勇 男 20 CS 3 88 95002 刘晨 女 19 IS 2 90 95002 刘晨 女 19 IS 3 80 95003 王敏 女 18 MA 95004 张立 男 19 IS
外连接(续) 在表名后面加外连接操作符()或(+指定非主 体表 非主体表有一N万能〃的虚行,该行全部由空 值组成 虚行可以和主体表中所有不满足连接条件的 元组进行连接 由于虚行各列全部是空值,因此与虚行连接 的结果中,来自非主体表的属性值全部是空 值
外连接(续) – 在表名后面加外连接操作符(*)或(+)指定非主 体表 – 非主体表有一“万能”的虚行,该行全部由空 值组成 – 虚行可以和主体表中所有不满足连接条件的 元组进行连接 – 由于虚行各列全部是空值,因此与虚行连接 的结果中,来自非主体表的属性值全部是空 值
外连接(续) 左外连接 外连接符出现在连接条件的左边 右外连接 外连接符出现在连接条件的右边
外连接(续) z 左外连接 – 外连接符出现在连接条件的左边 z 右外连接 – 外连接符出现在连接条件的右边