一个简单的SQL查询,但我无法让它工作.当我删除子查询时,该语句返回正确的数据,因此错误需要在子查询中.这是我到目前为止所得到的:
"SELECT s.*, (SELECT s.* FROM sites_photos WHERE sites_id = s.id)
FROM sites
AS s";
Run Code Online (Sandbox Code Playgroud)
提前致谢.
使用嵌套选择时,只能有一列.这称为"标量子查询".如果您想要多列,只需使用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
.