Collection Contents 上一页 下一页 PDF

ASA SQL 用户指南

连接:从多个表检索数据

交叉连接


两个表的交叉连接生成来自这两个表的各行的所有可能组合。交叉连接也称作矢量积或笛卡儿积。

第一个表的每一行针对第二个表的每一行都出现一次。因此,结果集中的行数是第一个表中的行数与第二个表中的行数相乘、然后减去由于 WHERE 子句中的限制而省略的所有行数而得出的。

您不能将 ON 短语与交叉连接一起使用。但是,您可以将限制放置于 WHERE 子句中。

内部修饰符和外部修饰符不适用于交叉连接 

除了 WHERE 子句中存在的额外限制,两个表中的所有行都始终出现在交叉连接的结果集中。因此,INNER、LEFT OUTER 和 RIGHT OUTER 关键字不适用于交叉连接。

例如,以下语句连接两个表。

SELECT *
FROM A CROSS JOIN B

来自此查询的结果集包括 A 中的所有列和 B 中的所有列。A 的任一行和 B 的任一行的每一组合在结果集中均有一行。如果 A 具有 n 行,B 具有 m 行,则查询返回 n x m 行。


逗号

Collection Contents 上一页 下一页 PDF