加入 2 个不明确的 SQL 表
Join 2 ambiguous SQL tables
我有 2 个 table 想加入,当我尝试时它给我错误“模棱两可” 事情是 table 加入后它们应该生成新行,因为值将匹配超过 1 次。
table_1
row_a
row_b
row_c
abc
True
1992
abc
False
1992
table_2
row_c
row_d
row_e
1992
old
expired
1992
new
recent
我想加入他们一起创造
row_a
row_b
row_c
row_d
row_e
abc
True
1992
old
expired
abc
True
1992
new
recent
abc
False
1992
old
expired
abc
False
1992
new
recent
它必须在 SQL 中创建新的 table,而不是 python 或其他类似的东西。实际上,代码需要基于 2 列进行连接。
CROSS JOIN 得到你想要的结果
SELECT row_a,row_b,table_1.row_c,row_d, row_e FROM table_1 CROSS JOIN table_2;
我有 2 个 table 想加入,当我尝试时它给我错误“模棱两可” 事情是 table 加入后它们应该生成新行,因为值将匹配超过 1 次。
table_1
row_a | row_b | row_c |
---|---|---|
abc | True | 1992 |
abc | False | 1992 |
table_2
row_c | row_d | row_e |
---|---|---|
1992 | old | expired |
1992 | new | recent |
我想加入他们一起创造
row_a | row_b | row_c | row_d | row_e |
---|---|---|---|---|
abc | True | 1992 | old | expired |
abc | True | 1992 | new | recent |
abc | False | 1992 | old | expired |
abc | False | 1992 | new | recent |
它必须在 SQL 中创建新的 table,而不是 python 或其他类似的东西。实际上,代码需要基于 2 列进行连接。
CROSS JOIN 得到你想要的结果
SELECT row_a,row_b,table_1.row_c,row_d, row_e FROM table_1 CROSS JOIN table_2;