每日一题:SQL 中 row_number()rank()和dense_rank()有啥区别
Posted Python学习与数据挖掘
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每日一题:SQL 中 row_number()rank()和dense_rank()有啥区别相关的知识,希望对你有一定的参考价值。
每日一题 精选常考面试题,将其汇总成专栏,利用零碎时间为职业保驾护航,建议大家独立思考答题。
资料推荐
题目
SQL 中 row_number()、rank()和dense_rank()的有什么区别?
准备的数据集
A,1
B,3
C,2
D,3
E,4
F,5
G,6
参考答案
创建临时表test_rank,执行sql
select a,row_number() over(order by b) row_number
,rank() over(order by b) rank,
dense_rank() over(order by b) dense_rank
from test_rank;
区别如下
a row_number rank dense_rank
A 1 1 1
C 2 2 2
D 3 3 3
B 4 3 3
E 5 5 4
F 6 6 5
G 7 7 6
为更好的交流学习,应读者的要求,我建立了一个交流群,有需要的同学可以扫描下方公众号或者微信搜索:Python学习与数据挖掘,后台回复关键字:面试,即可获取快速加入通道。
以上是关于每日一题:SQL 中 row_number()rank()和dense_rank()有啥区别的主要内容,如果未能解决你的问题,请参考以下文章