假设你有许多表格,名字是company1,company2等等,直到company1000。结构如下:
Company 1
product cost($)
A C1A
B C1B
C C1C
有1000张这样的table。所有公司销售3种产品a、b、c。你将如何比较你的公司说520公司与所有其他1000家公司。
所有这些表都在数据库下 Companies
如何在sql中同时联接所有这些表?
我非常了解联接,但我知道一次只能联接两个表。有没有一种方法可以在sql中将多个表连接在一起
预期产量
product cost($)_Company1 cost($)_Company2 cost($)_Company3
A C1A C2A C3A
B C1B C2B C3B
C C1C C2C C3C and so on for all 1000 companies
注意:在组合预期输出中,\公司名称附加到成本列名后,以标识与成本相对应的公司
我在采访中被问到这个问题,你将如何一次性做到,我不知道答案。有人能帮忙吗。表的结构与所有表中列的名称相同 product
以及 cost($)
作为列名
2条答案
按热度按时间bsxbgnwa1#
试试下面这个例子。联接表没有限制。
fslejnso2#
您可以使用simple
join
```select
t1.product,
t1.cost as 'cost($)_Company1',
t2.cost as 'cost($)_Company2',
t3.cost as 'cost($)_Company3',
from company1 t1
join company2 t2
on t1.product = t2.product
join company3 t3
on t2.product = t3.product
order by
t1.product