首页 > 解决方案 > MYSQL:在一个条件下连接三个表

问题描述

我希望在一个条件下加入三个表。Table1 是具有与其他两个表相关的 id 的“主”表。

我知道如何进行单一连接:

SELECT name, column2
FROM table1
LEFT OUTER JOIN table2 ON table1.id2 = table2.id2

但是我无法将它与第二个 JOIN 连接以获取column3使用table1.id3 = table3.id3.

还有一个额外的困难,因为我只想显示那些记录name = $name(预定义的变量)。

表格1

编号 | id2 | id3 | 姓名

表2

id2 | 第 2 列

表3

id3 | 第 3 列

非常感谢有关如何连接这三个语句的任何提示。

编辑:

SELECT name, column2, column3 FROM table1
LEFT OUTER JOIN table2 ON table1.id2 = table2.id2
LEFT OUTER JOIN table3 ON table1.id3 = table3.id3

我已经设法加入这三个表,我唯一的问题是添加name=$name条件。

我试过了

SELECT name, column2, column3
FROM table1
WHERE name=$name
LEFT OUTER JOIN table2 ON table1.id2 = table2.id2
LEFT OUTER JOIN table3 ON table1.id3 = table3.id3

SELECT name, column2, column3
FROM table1
LEFT OUTER JOIN table2 ON table1.id2 = table2.id2
LEFT OUTER JOIN table3 ON table1.id3 = table3.id3
WHERE name=$name

至今。

标签: mysqljoin

解决方案


推荐阅读