有一个像这样的表格T:
ID DateTime asha
AF35 15-01-17 af
AF35 14-01-17 la
AF35 13-01-17 fi
DF57 15-01-17 sk
DF57 14-01-17 sj
DG36 15-01-17 be
DG36 14-01-17 dh
最简单的mysql
查询是什么,只返回返回的每个唯一ID
的第一行,按最新的DateTime
排序?
我预期的结果是这样的:
ID DateTime asha
AF35 15-01-17 af
DF57 15-01-17 sk
DG36 15-01-17 be
我试过SELECT * FROM T GROUP BY ID ORDER BY DateTime
但是,mysql返回错误,因为没有将其他列添加到子句中。如果我添加它们,我仍然会获得ID的重复结果。
答案 0 :(得分:3)
我最喜欢写这个查询的方法是使用not exists子句:
['1,150.00', '150.00', '1,150.00', '100.00', '400.00', '800.00']
答案 1 :(得分:-1)
SELECT Distinct(ID),DateTime,asha FROM T GROUP BY ID ORDER BY DateTime desc
将上述查询用于唯一的Id记录。