查询出每个用户的最近三笔订单
题目需求
从订单信息表(order_info)中查询出每个用户的最近三笔订单,期望结果如下:
user_id | order_id | create_date |
---|---|---|
101 | 4 | 2021-09-30 |
101 | 3 | 2021-09-29 |
101 | 2 | 2021-09-28 |
… | … | … |
代码实现
select
user_id,
order_id,
create_date
from
(
select
user_id,
order_id,
create_date,
row_number() over (partition by user_id order by create_date desc) rn
from order_info
)t1
where rn<=3;