热线电话:13121318867

登录
2020-02-19 阅读量: 2249
面试题:查询每个用户订单金额最高的前三个订单

select *,

row_number() over(partition by user_no order by amount desc) r1,

rank() over(partition by user_no order by amount desc) r2,

dense_rank() over(partition by user_no order by amount desc) r3

from order_tab;

select *,row_number() over(partition by user_no order by amount desc) r

from order_tab

where r<=3;-- 报错:先执行where再执行select子句

select *

from (select *,row_number() over(partition by user_no order by amount desc) r

from order_tab) t

where r<=3;

7.7154
3
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子