仅显示MySQL中每条记录的最新批次

时间:2014-12-08 21:45:51

标签: mysql sql clause

我的下表中有Patientid,他们收到的疫苗名称以及他们收到的日期。我正在尝试编写一个SQL查询,只显示每个患者的最新给定日期。

patientId   vaccinename  givenDate
100          Influenza   7/23/2013
100          Influenza   10/14/2014
101          Influenza   11/24/2009
101          Influenza   10/14/2013
101          Influenza   10/22/2014
102          Influenza   10/24/2013
102          Influenza   10/8/2014

1 个答案:

答案 0 :(得分:1)

非常简单,只需按患者和疫苗分组,并返回最近的最长日期。

SELECT patientID, vaccinename, MAX(givenDate)
FROM patient_info
GROUP BY patientID, vaccinename

SQL小提琴:http://sqlfiddle.com/#!2/c6eee9/1