我有一个名为 tblSport 的表格,其中包含 pkSportID 和 fldName 列。
我有一个名为 tblRespondentSport 的表格,其中包含 fkRespondentID 和 fkSportID 列。
我想要返回运动ID,运动名称和受访者人数。
这是我的疑问:
SELECT s.pkSportID AS id, s.fldSport AS sport, r.COUNT(*) AS count FROM tblSport AS s LEFT JOIN tblRespondentSport AS r ON s.pkSportID = r.fkSportID
我收到一个MySQL 1064错误,它说它在COUNT()附近*。我很新加入,所以我确定它是微不足道的。提前谢谢。
答案 0 :(得分:0)
您缺少Group BY
SELECT s.pkSportID AS id, s.fldSport AS sport, COUNT(*) AS count
FROM tblSport AS s LEFT JOIN tblRespondentSport AS r
ON s.pkSportID = r.fkSportID
GROUP BY s.pkSportID, s.fldSport
答案 1 :(得分:0)
我认为您需要更改r.COUNT(*) to COUNT(r.*).
甚至只需更改COUNT(*)