我有以下代码,它从名为wwlassessments的表中提取最新的行。 它工作正常,但我想要做的是显示与表中的WHERE条件匹配的所有行,无论wwlassessments表中是否有条目。
我尝试将第二次JOIN更改为LEFT JOIN,但这只会提供数千个不准确的结果。
我确信这很简单,但我不能为我的生活找到我需要改变的东西!提前致谢。
SELECT s.*,
a.*
FROM wwlstatements s
LEFT JOIN wwlassessments a ON a.id = s.id
JOIN (SELECT n.id,n.pupilID,
MAX(n.dateAchieved) AS max_achieved_date
FROM wwlassessments n
where n.pupilID='114631705547'
GROUP BY n.id) y ON y.id = a.id
AND y.max_achieved_date = a.dateAchieved
WHERE s.`category`='Reading'
ORDER BY s.`statementID` ASC