将一个表中的两列连接到另一个引用表中的列

时间:2014-09-05 23:26:57

标签: sql sql-server tsql

我有两个表,如下面的sql server:

表1

ID  Result ProductId1 ProductId2
10  Pass   1          2
22  Failed 3          4

表2

Id Name
1  ABC
2  DEF
3  GHI
4  JKL

如何连接表以获取此结果表:

结果

ID Result Name1 Name2
10 Pass   ABC   DEF
20 Failed GHI   JKL

我正在使用SQL Server。

1 个答案:

答案 0 :(得分:4)

您想要两次加入参考表:

select t1.id, t2.result, t21.name as name1, t21.name as name2
from table1 t1 join
     table2 t21
     on t1.productid1 = t21.id join
     table2 t22
     on t1.productid2 = t22.id;

请注意在from子句中使用表别名来区分这两个表。