我有一个名为ABC的表,有3个字段:id1,id2,id3,数据:
id1 | id2 | id3
________________
1 | 5 | 3
3 | 4 | 2
2 | 3 | 1
我有一个名为XYZ的第二个表,其中包含2个字段,id和title with data:
id | title
______________
1 | title_1
2 | title_2
3 | title_3
4 | title_4
5 | title_5
表ABC中的ID与表XYZ中每条记录的ID相匹配。我喜欢做的是将表ABC中的ID与表XYZ中的ID连接起来并连续显示标题。因此,如果输出表ABC中的前两个记录,它将如下所示:
title_1, title_5, title_3
title_3, title_4, title_2
在PHP中输出很好我只是有点迷失SQL。我一直在尝试使用左连接,但我还没有走得太远。任何帮助将不胜感激。
答案 0 :(得分:3)
您可以使用不同的连接条件多次加入同一个表:
SELECT xyz1.title as title1, xyz2.title as title2, xyz3.title as title3
FROM ABC
JOIN XYZ as xyz1 ON xyz1.id = ABC.id1
JOIN XYZ as xyz2 ON xyz2.id = ABC.id2
JOIN XYZ as xyz2 ON xyz3.id = ABC.id3
这应该正确输出
title_1, title_5, title_3
title_3, title_4, title_2