分布式连接两个表
Concatenating two tables distributively
我不是 100% 确定如何表述这个问题,但我非常想这样做:
假设我有两个 tables:
table一个:
a1
a2
和
table b:
b1
b2
我想将它们组合起来并创建一个 table 例如:
a1 b1
a1 b2
a2 b1
a2 b2
(对于 table a 中的每一行,在 table b 中创建行数)
我想我可以使用某种循环来做到这一点,但我想知道是否有任何方法可以用集合逻辑来做到这一点?
您要查找的语法是 cross join
:
SELECT a.*, b.*
FROM a
CROSS JOIN b
您不需要任何循环。
这是 SQL 中的一项非常简单的任务。
你可以这样做:
select a.*, b.*
from a
cross join b
或:
select a.*, b.*
from a
inner join b on (1=1)
无需循环,只需简单的一行查询即可。
SELECT a.*, b.* FROM a,b
注意:默认是cross join,不需要定义关键字cross join。
我不是 100% 确定如何表述这个问题,但我非常想这样做:
假设我有两个 tables:
table一个:
a1
a2
和 table b:
b1
b2
我想将它们组合起来并创建一个 table 例如:
a1 b1
a1 b2
a2 b1
a2 b2
(对于 table a 中的每一行,在 table b 中创建行数)
我想我可以使用某种循环来做到这一点,但我想知道是否有任何方法可以用集合逻辑来做到这一点?
您要查找的语法是 cross join
:
SELECT a.*, b.*
FROM a
CROSS JOIN b
您不需要任何循环。
这是 SQL 中的一项非常简单的任务。
你可以这样做:
select a.*, b.*
from a
cross join b
或:
select a.*, b.*
from a
inner join b on (1=1)
无需循环,只需简单的一行查询即可。
SELECT a.*, b.* FROM a,b
注意:默认是cross join,不需要定义关键字cross join。