SQL子查询 - 从两个表中选择数据

时间:2014-08-14 11:37:44

标签: sql subquery

一个简单的SQL查询,但我无法让它工作。 当我删除子查询时,该语句返回正确的数据 错误需要在子查询中。 这是我到目前为止所得到的:

"SELECT s.*, (SELECT s.* FROM sites_photos WHERE sites_id = s.id)
 FROM sites
 AS s";

提前致谢。

1 个答案:

答案 0 :(得分:6)

使用嵌套选择时,只能有一列。这称为“标量子查询”。如果您想要多列,只需使用join

SELECT s.*, sp.*
FROM sites s left join
     sites_photos sp
     on sp.sites_id = s.id;

请注意left join的使用。即使sites_photos中没有匹配的行,也可以确保包含所有网站。