将子选择加入sql中的表

时间:2010-10-29 14:51:14

标签: mysql join

是否可以将SELECT的结果与另一个表连接。

像这样: SELECT * FROM table1 LEFT OUTER JOIN(SELECT * FROM table 2)

我知道我需要链接列但不确定如何。这可能吗?

2 个答案:

答案 0 :(得分:3)

您需要知道您要加入的列。假设它们在两个表中都被称为ID,这样的东西就可以工作:

SELECT *
FROM table1 t1
LEFT OUTER JOIN (SELECT * FROM table 2) t2 on t1.ID = t2.ID

请注意,您应该明确命名所需的列,而不是使用*。如果您不需要所有数据,这将提供更有效的查询,并且还可以防止返回重复的列名。

答案 1 :(得分:0)

你可以这样做。代码类似于:

(SELECT id as leftid,[other fields] FROM table1)LEFT OUTER JOIN(SELECT id rightid,[other fields] FROM table2)ON(leftid = rightid)

我没有测试它,但是......