MySQL查询选择不同的字段,然后按日期排序

时间:2011-10-02 16:33:57

标签: mysql date select

我想按日期对表格进行排序。我有相同艺术家姓名的多条记录,但它们有不同的日期

e.g。

ARTIST:DATE
Gerd:2011-09-28
Gerd:2011-09-01
Simon:2011-07-01
Simon:2011-10-02
Franco:2011-01-10
Franco:2011-09-15
Franco:2011-07-01
Des:2011-09-05

如何提取不同的用户名并显示他们创建记录的最新日期?我还想只显示超过2条记录的名称

所以在这种情况下我想要的结果是

Simon:2011-10-02
Gerd:2011-09-28
Franco:2011-09-15

(我希望这些按日期顺序排序)

谢谢!

1 个答案:

答案 0 :(得分:3)

试试这个:

SELECT Artist, MAX(Date) AS MaxDate
FROM Artists
GROUP BY Artist
HAVING COUNT(Artist) > 2 
ORDER BY MaxDate DESC

您的问题明确指出“超过2”,但您的示例数据说明了> = 2.无论如何,您可以根据需要调整HAVING

HAVING COUNT(Artist) >=2