GBASE南大通用技术分享:GBase 8s数据库SELECT 语句外连接子句简介

36 阅读1分钟

南大通用GBase 8s数据库SELECT 语句之外连接子句简介

ANSI LEFT OUTER 连接

LEFT 关键字指定将第一个表引用处理作为该连接中的主表的连接。在左外连接中,外连接的从部分出现在起始该外连接规范的关键字的右边。结果集包括 INNER 连接返回的所有行,加上可能已从从表废弃的所有行。

ANSI RIGHT OUTER 连接

RIGHT 关键字指定连接,该连接处理第二个表引用作为连接中的从表。在右外连接中,外连接的从部分出现在起始该外连接规范的关键字的左边。结果集包括 INNER 连接返回的所有的行,加上可能已从从表废弃了的所有行。

对横向派生的表的相关联引用不是 ANSI RIGHT OUTER 连接中有效的表引用。例如,下列查询失败,因为在派生的表的 ON 子句中的相关联的引用 t1.c1 是不受支持的横向相关联:

SELECT * FROM t1 RIGHT JOIN LATERAL

(SELECT * FROM t2 JOIN t3

ON t2.c1 = t1.c1) AS X ON 1=1;