博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
oracle中的分组排序
阅读量:5076 次
发布时间:2019-06-12

本文共 787 字,大约阅读时间需要 2 分钟。

1.首先,需要建表。

表名:coursr(失误,表名写错了)

 

2.我们需要对每个课程进行排序。

3.知识准备:

分组排序函数有3种:

  • row_number() over()
  • rank() over()
  • dense_rank() over()

4.运行

  • row_number() over()
select t.*,       row_number() over(partition by t.coursename order by t.coursescore desc) courserank  from sddbtmp.coursr t

结果:

结论:

       可以看出,row_number() over() 这个函数把排序从1开始,不管分数重复不重复。

  • rank() over()
select t.*,       rank() over(partition by t.coursename order by t.coursescore desc) courserank  from sddbtmp.coursr t

结果:

结论:这个函数把排序从1开始,但是当分数重复时,排名会相同,例如有两个第二名时接下来就是第四名(同样是在各个分组内)

  • dense_rank() over()
select t.*,       dense_rank() over(partition by t.coursename order by t.coursescore desc) courserank  from sddbtmp.coursr t

结果:

结论:这个函数把排序从1开始,但是当分数重复时,排名会相同,例如有两个第二名时接下来就是第三名(同样是在各个分组内)

转载于:https://www.cnblogs.com/zcr3108346262/p/6531425.html

你可能感兴趣的文章
15 FFT及其框图实现
查看>>
Linux基本操作
查看>>
osg ifc ifccolumn
查看>>
C++ STL partial_sort
查看>>
3.0.35 platform 设备资源和数据
查看>>
centos redis 安装过程,解决办法
查看>>
IOS小技巧整理
查看>>
WebDriverExtensionsByC#
查看>>
我眼中的技术地图
查看>>
lc 145. Binary Tree Postorder Traversal
查看>>
sublime 配置java运行环境
查看>>
在centos上开关tomcat
查看>>
重启rabbitmq服务
查看>>
正则表达式(进阶篇)
查看>>
无人值守安装linux系统
查看>>
【传道】中国首部淘宝卖家演讲公开课:农业本该如此
查看>>
jQuery应用 代码片段
查看>>
MVC+Servlet+mysql+jsp读取数据库信息
查看>>
黑马程序员——2 注释
查看>>
用OGRE1.74搭建游戏框架(三)--加入人物控制和场景
查看>>