创建访问同一个表的多个联接

时间:2013-11-01 01:33:23

标签: mysql sql join

我需要一种从同一个表中提取两个用户名的方法。我能够拉出第一个名字(吉姆),但是我在第二个标准/加入时遇到了麻烦。

两个表:

tbl_users
usr_index |  usr_name
1         |  bob
2         |  mike
3         |  jim


tbl_master
mas_openedby  |  mas_closedby
    3         |        1
    1         |        3
    2         |        2

tbl_master.mas_openedby = 3
tbl_master.mas_closedby = 2

第一个结果应该是(打开):jim 秒。结果应该是(关闭):迈克

select tbl.users.usr_name
...
FROM tbl_master

LEFT JOIN tbl_users ON tbl_users.usr_index = tbl_master.mas_openedby

LEFT JOIN tbl_users ON tbl_users.usr_index = tbl_master.mas_closedby

1 个答案:

答案 0 :(得分:1)

您需要为每个联接分配一个唯一的别名:

LEFT JOIN tbl_users AS userjoin1 ON userjoin1.usr_index = tbl_master.mas_openedby

LEFT JOIN tbl_users AS userjoin2 ON userjoin2.usr_index = tbl_master.mas_closedby

......然后:

SELECT userjoin1.usr_name, userjoin2.usr_name FROM...