mysql按天查找每个id的最大项

bis0qfac  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(255)

我有一个mysql表,如下所示:

id | day | item
---------------
 1 |   1 |    A
 1 |   2 |    B
 1 |   3 |    A
 2 |   1 |    C
 2 |   2 |    C
 2 |   5 |    B
 3 |   6 |    A
 3 |   7 |    C

我想在一天内拿到每个身份证的最后一件物品。所以输出是这样的:

id | day | item
---------------
 1 |   3 |    A
 2 |   5 |    B
 3 |   7 |    C

实现这一目标的最佳方法是什么?
我知道当最后一次 day 对所有人都一样 id s、 但我不知道如何在每个人 id 可能会有不同的最后一天。

oprakyz7

oprakyz71#

这应该起作用:

select table.* from table
join (select id, max(day) as day from table group by id) 
as m on m.id = table.id and m.day = table.day

相关问题