当连接表2中的最新记录时,返回表1中的所有行

时间:2017-10-04 06:17:28

标签: mysql

我有以下代码,它从名为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

0 个答案:

没有答案