在sql中双重INNER JOIN

时间:2015-06-26 19:20:45

标签: sql sql-server

我有一张桌子,我试图两次进入INNER JOIN。这是我的榜样:

Table1:
id1, id2, otherInfo

Table2:
id, Name, phone, address

在这个例子中,我需要获取id1和id2的名称和电话。我该如何做到这一点?如果id1 = 0,我该如何处理?非常感谢您的帮助。谢谢!

2 个答案:

答案 0 :(得分:3)

您可以尝试inner join

select t2.name
     , t2.phone
     , t3.name
     , t3.phone
from table1 t1
join table2 t2 on t1.id1 = t2.id
join table2 t3 on t1.id2 = t3.id

如果id1id2可以是null,请改用left join

答案 1 :(得分:0)

你的问题有点模糊,但我认为这正是你要找的。

select t1.otherInfo
    , t2.Name
    , t2.Phone
from Table1 t1
join Table2 t2 on t2.id = t1.id1 OR t2.id = t1.id2