我在表格中有30个记录具有相同的标题,但每个记录具有不同的ID和日期。如何按日期在最近的查询中返回?
表格如下:
Id - Title - Date
-----------------
1 - africa - 2012-11-27
2 - africa - 2012-11-26
3 - africa - 2012-11-25
我需要一个返回Id为3的记录的查询,这是该日期的最新记录。直到现在我使用GROUP BY的所有尝试只返回Id为1的记录。我该怎么做?
答案 0 :(得分:4)
您希望获得第一条记录,但这不是最近的。子查询背后的想法是它获得每个标题的第一个日期,并且只要它与标题和日期相匹配就加入它。
SELECT a.*
FROM tableName a
INNER JOIN
(
SELECT title, MIN(DATE) minDate
FROM tableName
GROUP BY title
) b ON a.title = b.titleAND
a.date = b.maxDate
答案 1 :(得分:2)