MySQL左连接取决于两个字段

时间:2014-11-10 09:31:03

标签: mysql

假设我们有2个表:

第一张表:“成员”

id    name
===========
10    Rooney

20    George

30    Hoytt

40    Percy

第二张表:“互动”

id    iType    mem1    mem2
===========================
5501   PRIVMSG   10    30

5502   NOTICE    20    40

结果应该是:

id    iType    mem1    mem2    mem1name    mem2name
==========================================
5501   PRIVMSG 10    30      Rooney     Hoyyt

5502   NOTICE  20    40      George     Percy

我们如何使用单个MySQL查询来获取此输出表?

谢谢你们。

1 个答案:

答案 0 :(得分:2)

只需使用两个连接并为它们提供不同的别名:

SELECT interactions.*,m1.name as 'mem1name',m2.name as 'mem2name'
FROM 
    interactions 
    LEFT JOIN members m1 ON (interactions.mem1 = m1.id) 
    LEFT JOIN members m2 ON (interactions.mem2 = m2.id)