oracle rank 语法_Oracle排名函数(Rank)实例详解
--
已知:两种排名方式
(
分区和不分区
):
使用和不使用
partition
--
两种计算方式
(
连续
,
不连续
),
对应函数:
dense_rank,rank
·查询原始数据:学号
,
姓名
,
科目名
,
成绩
select
*
from
t_score
S_ID
S_NAME
SUB_NAME
SCORE
1
张三
语文
80.00
2
李四
数学
80.00
1
张三
数学
0.00
2
李四
语文
50.00
3
张三丰
语文
10.00
3
张三丰
数学
3
张三丰
体育
120.00
4
杨过
JAVA
90.00
5
mike
c++
80.00
3
张三丰
Oracle
0.00
4
杨过
Oracle
77.00
2
李四
Oracle
77.00
·查询各学生科目为
Oracle
排名
(
简单排名
)
select
sc.s_id,sc.s_name,sub_name,sc.score,
rank() over
(
order
by
score
desc
)
名次
from
t_score sc
where
sub_name=
'Oracle'
S_ID
S_NAME
SUB_NAME
SCORE
名次
4
杨过
Oracle
77.00
1
2
李四
Oracle
77.00
1
3
张三丰
Oracle
0.00
3
对比:
rank()
与
dense_rank()
:非连续排名与连续排名
(
都是简单排名
)
select
sc.s_id,sc.s_name,sub_name,sc.score,
dense_rank() over
(
order
by
score
desc
)
名次
from
t_score sc
where
sub_name=
'Oracle'
S_ID
S_NAME
SUB_NAME
SCORE
名次
4
杨过
Oracle
77.00
1
2
李四
Oracle
77.00
1
3
张三丰
Oracle
0.00
2
·查询各学生各科排名
(
分区排名
)
select
sc.s_id,sc.s_name,sub_name,sc.score,
rank() over
(
partition
by
sub_name
order
by
score
desc
)
名次
from
t_score sc
S_ID
S_NAME
SUB_NAME
SCORE
名次
4
杨过
JAVA
90.00
1
4
杨过
Oracle
77.00
1
2
李四
Oracle
77.00
1
3
张三丰
Oracle
0.00
3
5
mike
c++
80.00
1
3
张三丰
数学
1
2
李四
数学
80.00
2
1
张三
数学
0.00
3
3
张三丰
体育
120.00
1
1
张三
语文
80.00
1
2
李四
语文
50.00
2
3
张三丰
语文
10.00
3
·查询各科前
2
名
(
分区排名
)
·类似:新闻表
,
求栏目点击率在前
3
位的新闻。
商品表
,
求各类别销售额在前
10
位的商品。
select * from (
select sc.s_id,sc.s_name,sub_name,sc.score,
dense_rank() over
(partition by sub_name order by score desc)
名次
from t_score sc
) x
where x.
名次
<=2
S_ID
S_NAME
SUB_NAME
SCORE
名次
4
杨过
JAVA
90.00
1
4
杨过
Oracle
77.00
1
2
李四
Oracle
77.00
1
oracle rank 语法_Oracle排名函数(Rank)实例详解相关推荐
- python打开文件的语法_python27语法Python文件打开方式实例详解【a、a+、r+、w+区别】...
本文实例讲述了Python文件打开方式.分享给大家供大家参考,具体如下: 第一步 排除文件打开方式错误: r只读,r+读写,不创建 w新建只写,w+新建读写,二者都会将文件内容清零 (以w方式打开,不 ...
- python命名空间和闭包_Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】...
本文实例讲述了Python函数基础用法.分享给大家供大家参考,具体如下: 一.什么是命名关键字参数? 格式: 在*后面参数都是命名关键字参数. 特点: 1.约束函数的调用者必须按照Kye=value的 ...
- java asynchronize_Java 中synchronize函数的实例详解
Java 中synchronize函数的实例详解 java中的一个类的成员函数若用synchronized来修饰,则对应同一个对象,多个线程像调用这个对象的这个同步函数时必须等到上一个线程调用完才能由 ...
- php的可变函数,php之可变函数的实例详解
php之可变函数的实例详解 php的可变函数,今天大概的了解下,是看php手册总结的,觉得用处不大: PHP 支持可变函数的概念.这意味着如果一个变量名后有圆括号,PHP 将寻找与变量的值同名的函数, ...
- python中symbols函数用法_Python基础之函数用法实例详解
本文以实例形式较为详细的讲述了Python函数的用法,对于初学Python的朋友有不错的借鉴价值.分享给大家供大家参考之用.具体分析如下: 通常来说,Python的函数是由一个新的语句编写,即def, ...
- python的scatter函数_python scatter函数用法实例详解
这篇文章主要介绍了python scatter函数用法实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 函数功能:寻找变量之间的关系. 调用签 ...
- python decode函数的用法_Oracle DECODE函数的用法详解
Oracle DECODE函数 使用方法: 1.比较大小 select decode(sign(变量1-变量2),-1,变量1,变量2) from dual; --取较小值 sign()函数根据某个值 ...
- oracle rank 语法_Oracle-- (RANK) 排名函数
内容来自: Oracle® Database SQL Language Reference 11g Release 2 (11.2) E41084-03. empolyees表来自hr方案. RANK ...
- mysql+cur+0_MySQLcurdate()函数的实例详解
MySQL CURDATE功能介绍 如果在数字上下文中使用字符串上下文或YYYMMDD格式,CURDATE()函数将以"YYYY-MM-DD"格式的值返回当前日期. 以下示例显示了 ...
最新文章
- AFNetWorking 队列请求
- JAVA代码实现多级树结构封装对象
- jax-rs jax-ws_对状态代码使用JAX-RS异常
- 校验电话号码 手机号码正则表达式
- 广数系统加工中心编程_加工中心宏程序编程应用案例分享
- 纽约亮马河邮轮 - 从水上欣赏纽约迷人景色
- 什么是法线贴图 今天教你如何制作法线贴图
- pvr与png的内存占用
- 使用python批量解压7z格式压缩包
- 《三国演义》中的火烧赤壁居然也是假的!!
- windos php7 fast cgi,FAST-CGI解析漏洞拿下网站并提权windows系统服务器
- w500 安装 gentoo相关优化
- 在计算机网络俗称网上邻居上能看到自己,为什么在“网上邻居”中可以看到自己,却看不到其他联网电脑?...
- 阅读笔记-阿里妈妈AI智能文案
- 强化学习-把元学习(Meta Learning)一点一点讲给你听
- hzw的数列分块入门
- 高级控件之分组列表视图(ExpandableListView)
- 【无标题扫地机SRRC认证】
- Spring架构及设计理念
- 利用DNS AAAA记录和IPv6地址传输后门
热门文章
- 【调剂】黑龙江大学电子工程学院-王国涛副教授课题组招收2021级硕士研究生(调剂生)...
- 11 万金油 String,为什么不好用了?
- H5流式播放(FMP4转封装与mediaSource)
- react native 出现程序包com.facebook.react不存在
- mysql使用博客_mysql使用
- postman实践与运用
- vb html单选按钮,VB常用控件属性讲解--单选按钮、复选框总结
- 源生ajax同步异步请求,源生JS怎样实现文件异步上传
- Python Diango学习之路
- 数据类型与字节(字符)