如何使用mysql仅显示最新的客户订单

问题描述 投票:0回答:1
Costumer order sold srp
1.       A.    10.  10
1.       B.    10.  10
1.       D.    10.  10
2.       A.    5.   10
2.       C.    10.  10

输出应该是哪个

Customer order sold srp
2.       A.     5.   10
2.       C.     10.  10
mysql sql greatest-n-per-group
1个回答
0
投票

假设您有一个排序列,例如id,则可以使用子查询进行过滤:

select t.*
from mytable t
where t.id = (
    select id from mytable t1 where t1.customer = t.customer order by id desc limit 1
)

在MySQL 8.0中,您也可以使用row_number()

select *
from (
    select t.*, row_number() over(partition by customer order by id desc) rn
    from mytable t
) t
where rn = 1
© www.soinside.com 2019 - 2024. All rights reserved.