我并不是100%肯定如何表达这个问题,但我非常想尝试这样做:
说我有两张桌子:
表a:
a1
a2
和 表b:
b1
b2
我想将它们组合起来并创建一个表格,如:
a1 b1
a1 b2
a2 b1
a2 b2
(对于表a中的每一行,在表b中创建行的行数)
我想我能够使用某种循环来做到这一点,但我想知道是否有任何方法可以用设置逻辑做到这一点?
答案 0 :(得分:4)
您要查找的语法是cross join
:
SELECT a.*, b.*
FROM a
CROSS JOIN b
答案 1 :(得分:0)
您不需要任何循环。
这是SQL中一个非常简单的任务。
你可以这样做:
select a.*, b.*
from a
cross join b
或:
select a.*, b.*
from a
inner join b on (1=1)
答案 2 :(得分:0)
无需循环只需简单的一行查询即可。
SELECT a.*, b.* FROM a,b
注意:默认为交叉连接,因此无需定义关键字交叉连接。