外连接
在内连接操作中,只有满足连接条件中的元组才能出现在查询结果集中,但有时我们也希望得到哪些不满足连接条件的元组的信息,比如查看全部课程的被选修情况,包括有学生的课程和没有学生选的课程。如果用内连接实现(通过SC表和Course表的内连接),则只能找到有学生选课的课程,因为内连接的结果首先是要满足连接条件sc.cno = course.cno,因此查询不出来。这样就需要使用外连接来实现。
外连接是只限制一张表中的数据必须满足连接条件,而另一种表中的数据可以不满足连接条件。
分类:外连接分为左外连接和右外连接两种。
语法:ANSI方式的外连接语法格式为:from 表1 left|right [outer] join 表2 on <连接条件>
左外连接:left[outer] join 称为左外连接,含义是限制表2中的数据必须满足连接条件,但不管表1中的数据是否满足连接条件,均输出表1中的数据。
右外连接:right[outer] join 称为右外连接。含义是限制表1中的数据必须满足连接条件,而不管表 2中的数据是否满足连接条件,均输出表2中的数据。