我这里有两张表,需要为所有组合生成一个矩阵
表1
Brand Company ID
1 1 1
2 2 2
3 3 3
表2
Prod1 Prod2 Prod3 Prod4 Prod5
4 5 6 18 19
5 6 7 20 5
我试图实现的结果
结果表:
Brand Company ID Prod1 Prod2 Prod3 Prod4 Prod5
1 1 1 4 5 6 18 19
1 1 1 5 6 7 20 5
2 2 2 4 5 6 18 19
2 2 2 5 6 7 20 5
如果他们有某种ID而不是如何处理这个以获得矩阵,我本可以使用它。
谢谢
答案 0 :(得分:2)
不确定查询中table1
的第三行发生了什么,以及为什么它不在结果中,但我认为您正在寻找cross join
。
select Brand, Company, ID, Prod1, Prod2, Prod3, Prod4, Prod5
from table1
cross join table2
rextester演示:http://rextester.com/UOZ33372
返回(添加了order by
):
+-------+---------+----+-------+-------+-------+-------+-------+
| Brand | Company | ID | Prod1 | Prod2 | Prod3 | Prod4 | Prod5 |
+-------+---------+----+-------+-------+-------+-------+-------+
| 1 | 1 | 1 | 4 | 5 | 6 | 18 | 19 |
| 1 | 1 | 1 | 5 | 6 | 7 | 20 | 5 |
| 2 | 2 | 2 | 4 | 5 | 6 | 18 | 19 |
| 2 | 2 | 2 | 5 | 6 | 7 | 20 | 5 |
| 3 | 3 | 3 | 4 | 5 | 6 | 18 | 19 |
| 3 | 3 | 3 | 5 | 6 | 7 | 20 | 5 |
+-------+---------+----+-------+-------+-------+-------+-------+