ITPub博客

首页 > 大数据 > Hadoop > sql排序row_number(),rank(),dense_rank()的区别

sql排序row_number(),rank(),dense_rank()的区别

原创 Hadoop 作者:影中漫步 时间:2016-09-07 09:59:42 0 删除 编辑
1.row_number() over() 用于按顺序排序(不并列)
select ds,level,row_number() over(partition by ds order by level desc) rn from table_name;

2.rank() over() 用于并列排序(不按顺序、按照整体排名)
select ds,level,rank() over(partition by ds order by level desc) rn from table_name;

3.dense_rank() 用于并列排序(按顺序)
select ds,level,dense_rank() over(partition by ds order by level desc) rn from table_name;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29667072/viewspace-2124628/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: mysql 基础
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2014-05-19

  • 博文量
    15
  • 访问量
    26328