完全外连接合并左连接和右连接的结果。对于连接表不匹配的行,完全连接设置每一列的值为null 。如果一个表的行与另一个表匹配,那么结果将包含来自两个的相应列。
假设需要从AB两个完全连接查询结果,语法如下:
其中 [OUTER] 关键字为可选的。下图使用韦恩图表示完全连接:
其结果包括两个表匹配的记录,也包不匹配的记录。
每个部门有0个或多个员工,每个员工属于0个或一个部门。下面插入一些示例数据:
我们指定如何使用内连接仅显示匹配的记录,同样左连接则丢失右边表的记录,右连接也一样。现在我们使用完全连接查询匹配和不匹配的记录:
我们看到 Julia Mcqueen 没有部门,同时 Production 部门没有所属员工。如果仅查询没有部门的员工,可以增加where条件进行过滤:
本文我们学习了完全连接查询,使用完全连接可以返回匹配记录和不匹配记录,避免信息丢失。