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;






评论(0)


暂无数据
推荐帖子
0条评论
1条评论
0条评论