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

use*_*011 0 sql subquery

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

"SELECT s.*, (SELECT s.* FROM sites_photos WHERE sites_id = s.id)
 FROM sites
 AS s";
Run Code Online (Sandbox Code Playgroud)

提前致谢.

Gor*_*off 6

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

SELECT s.*, sp.*
FROM sites s left join
     sites_photos sp
     on sp.sites_id = s.id;
Run Code Online (Sandbox Code Playgroud)

注意使用left join.这确保即使没有匹配的行,也包括所有站点sites_photos.