Sql 通过相同的列标识符创建两个独立的列
我想显示两个使用相同表标识符的不同列,但最终使用相同的列两次 有一个表包含以下信息:Sql 通过相同的列标识符创建两个独立的列,sql,Sql,我想显示两个使用相同表标识符的不同列,但最终使用相同的列两次 有一个表包含以下信息: Entity // Amount // SupplierID // ManagerID ----------- A // 54816.65 // 154 // 15 A // 18511.55 // 163 // 15 B // 51616.69 // 415 // 8 C /
Entity // Amount // SupplierID // ManagerID
-----------
A // 54816.65 // 154 // 15
A // 18511.55 // 163 // 15
B // 51616.69 // 415 // 8
C // 32178.32 // 846 // 6
还有一个表包含了我们数据库中的所有公司,其结构就是这样的
CompanyID // CompanyName
-----------
1 // Company 1
2 // Company 2
3 // Company 3
[...]
6486 // Company 6486
6487 // Company 6487
在最终显示时,我希望显示公司名称,而不是公司ID。到目前为止,我只需要显示公司或经理,因此我将在ID上连接两个表,如下所示
SELECT Companyname
FROM table 2
INNER JOIN table 1
ON SupplierID=CompanyID
鉴于只有一列[公司名称],我不确定如何使用此列中的信息,但根据绑定的ID将其显示在两个单独的列上。(例如供应商ID、ManagerID)
提前感谢您您必须两次加入
表1
和表2
:
SELECT t1.*,
s.Companyname SupplierCompanyName,
m.Companyname ManagerCompanyName
FROM table1 t1
INNER JOIN table2 s ON t1.SupplierID = t2.CompanyID
INNER JOIN table2 m ON t1.ManagerID = t2.CompanyID