可能重复:
获取列的最大值所在的行
我有一个人的审计表以及他们在特定时间戳拥有的股份数量。如何获取给定 ID 的最新记录?
mysql审计表
id name shares dateadded
1 Abc 12 2012-10-06 12:18:21
2 Klm 23 2012-10-06 12:18:21
3 Jim 45 2012-10-06 12:18:21
1 Abc 35 2012-11-06 12:18:21
1 Abc 65 2012-11-17 12:18:21
2 Klm 13 2012-11-06 12:18:21
我想要的输出:
id name shares dateadded
1 Abc 65 2012-11-17 12:18:21
2 Klm 13 2012-11-06 12:18:21
3 Jim 45 2012-10-06 12:18:21
我可以做这样的事情:
select a.* from audittable a join audittable b
on a.id = b.id
where a.dateadded > b.dateadded;
但这只会给我那些重复的最新记录。在这种情况下,ID 为 1,2 而不是 3。如何在没有子查询或临时表的情况下获取所有 ID 的最新记录列表?