1
我有三个表:家庭,选民,门户如何加入连续最大值
每个家庭可以有几个选民与它相关联。每个家庭也可能有几个与之相关的门铃。
我试图把所有的选民放在一起,并从door_knocks表中找到最后一个door_knock的日期,并且我很难计算出正确的查询语法。这是我最近的一次尝试:
SELECT households.hh_id, voters.id
FROM households
INNER JOIN voters ON households.hh_id = voters.hh_id
INNER JOIN (SELECT MAX(dk.date), dk.hh_id FROM door_knocks dk GROUP BY dk.date) dks
ON dks.hh_id = households.hh_id
WHERE households.street = ?
但是,上面的查询拉出了一个结果。我只想从最后敲门的日期。
啊,当然!不过,我还有其他问题。实际日期不会显示在结果中。当我尝试将'dk.date','dks.date'或'doork_knocks.date'放入查询的第一部分时,出现未知列。 – StevieD
@StevieD答案更新如果这回答你的问题,请接受答案 –
感谢您的指导。我刚注意到另外一个问题。我想包括没有入场门的家庭。左连接将解决这个问题?我会测试它,但现在我正在使用我的手机。 – StevieD