简介
交叉连接用于生成两个表或多个表的笛卡尔积(包含所有表中的每一行结果)。
在数学中,笛卡尔积是一种返回多组数据集的数学运算。
例如:两个集合:X {a, b, c}
和Y {1, 2, 3}
的笛卡尔积是:(a, 1),(a, 2),(a, 3),(b, 1),(b, 2),(b, 3),(c, 1),(c, 2),(c, 3)
。
在SQL中,A表
和B表
的笛卡尔积是结果集,第一个表A
中的每一行与第二个表B
中的每一行配对。假设A表
有m
行,B表
有n
行,那么A表
和B表
的交叉连接结果有m * n
行。
语法
第一种
select *
from A
cross join B;
第二种
select *
from A, B;