外连接

本章显示如何在 SELECT 语句中创建和使用外部连接。创建连接讨论内部连接。尽管内连接同等看待两个或多个连接的表,但外连接不同等看待两个或多个连接的表。外连接使其中一个表成为控制表(也称为外部表),控制其他从属表(也称为内部表)。

在内连接或简单连接中,结果只包含满足连接条件的行组合。废弃不满足连接条件的行。

在外连接中,结果包含满足连接条件的行与控制表中的行(如果在从属表中找不到匹配的行那么将废弃这些行)的组合。在从属表中无匹配行控制表的行在选自从属表的列中包括 NULL 值。

外连接允许您在应用连接条件之前将连接过滤器应用于内部表。

数据库服务器的较早版本只支持对用于外连接的 ANSI-SQL 标准语法的 GBase 8s 扩展。此语法仍受支持。然而,ANSI-SQL 标准语法在创建查询方面灵活性更高。建议使用 ANSI-SQL 标准语法来创建新查询。不管您使用何种形式的语法,必须将它用于单个查询块中的所有外连接。

在依赖于外连接之前,确定一个或多个内连接是否可工作。当不需要来自其它表的补充信息时,通常可以使用内连接。
限制: 不能在同一查询块中组合 GBase 8s 和 ANSI 外连接语法。

有关外连接的语法的信息,请参阅 GBase 8s SQL 指南:语法