SQL - 仅为每条记录获取特定日期

时间:2013-08-26 22:50:57

标签: mysql sql join

我有一个名为表单的表格,其中包含以下字段

StudentID
form
date

另外还有一个包含其信息的学生表,而StudentID是该表中的外键。

当学生移动表单时,会在此表中为他们添加新条目。这样我们就可以记录他们搬家的时间。

我正在尝试进行查询,以获取学生表中的所有信息(针对每个学生),并将其加入到当前所处的表单中(即,上面表单表中的最新日期。)

我可以为个别学生做,但找不到办法为整个学生表做。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

这是一种方法:

select s.*,
       max(f.date) as MostRecentDate,
       substring_index(group_concat(form order by date desc), ',', 1) as MostRecentForm
from student s join
     form f
     on s.StudentID = f.StudentId
group by s.StudentId;