SQL - 将同一个表中的两个字段连接到另一个表中的单个字段

时间:2013-08-08 12:27:30

标签: sql

我正在研究一种方法来查找出现在同一个表的两个字段中的代码的描述。

表/字段名称是:

Contacts 
Name, Group_1 and Group_4

Lookup
Lookup_Id, Lookup_Name

Contact.Group_1Contact.Group_4都引用Lookup.Lookup_Id中的值,需要在Lookup.Lookup_Name中解析为相应的名称值。

如何将这两个字段连接到Lookup表并让它们带回各自的Lookup_name值?

2 个答案:

答案 0 :(得分:4)

使用Lookup两次加入联系人。一次使用Group_1,一次使用Group_2。左连接而不是内连接,因为你可能有一个没有两个组的联系人。

SELECT C.Name,
       G1.Lookup_Name,
       G2.Lookup_Name
FROM   Contacts C
       LEFT JOIN Lookup G1 ON G1.Lookup_Id = C.Group_1
       LEFT JOIN Lookup G2 ON G2.Lookup_Id = C.Group_4

答案 1 :(得分:1)

像这样:

select *
from Contacts c
left join Lookup l1 on l1.Lookup_Id = c.Group_1
left join Lookup l2 on l2.Lookup_Id = c.Group_4