RANK() OVER(PARTITION BY deptno ORDER BY empno)
rank()是跳跃排序,有两个第二名时接下来就是第四名(同样是在各个分组内)
dense_rank()l是连续排序,有两个第二名时仍然跟着第三名。
相比之下row_number是没有重复值的
基于[deptno]进行具有重复序列的连续排序:
SELECT deptno,empno,DENSE_RANK() OVER(ORDER BY deptno) FROM emp;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7369 SMITH CLERK 7902 1980/12/17 800.00 20
7499 ALLEN SALESMAN 7698 1981/02/20 1600.00 300.00 30
7521 WARD SALESMAN 7698 1981/02/22 1250.00 500.00 30
7566 JONES MANAGER 7839 1981/04/02 2975.00 20
7654 MARTIN SALESMAN 7698 1981/09/28 1250.00 1400.00 30
7698 BLAKE MANAGER 7839 1981/05/01 2850.00 30
7782 CLARK MANAGER 7839 1981/06/09 2450.00 10
7788 SCOTT ANALYST 7566 1982/12/09 3000.00 20
7839 KING PRESIDENT 1981/11/17 5000.00 10
7844 TURNER SALESMAN 7698 1981/09/08 1500.00 0.00 30
7876 ADAMS CLERK 7788 1983/01/12 1100.00 20
7900 JAMES CLERK 7698 1981/12/03 950.00 30
7902 FORD ANALYST 7566 1981/12/03 3000.00 20
7934 MILLER CLERK 7782 1982/01/23 1300.00 10
14 rows selected
SQL>
RANK() OVER(PARTITION BY deptno ORDER BY empno)相关推荐
- oracle的rank,over partition 使用 和lead
http://blog.csdn.net/rokii/article/details/6429145 排列(rank ())函数.这些排列函数提供了定义一个集合(使用 PARTITION 子句),然后 ...
- over oracle 不足补零,oracle的rank,over partition涵数使用
排列(rank())函数.这些排列函数提供了定义一个集合(使用 PARTITION 子句),然后根据某种排序方式对这个集合内的元素进行排列的能力,下面以scott用户的emp表为例来说明rank ov ...
- 分析函数入门sum...over(partition by xxx order by yyy rows between zzz)
分析函数是什么? 分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计值. 分析函数和聚合函数的不 ...
- ORACLE中ROWNUMBER() OVER( PARTITION BY COL1 ORDER BY COL2)用法
row_number() OVER ( PARTITION BY COL1 ORDER BY COL2) 表示根据COL1分组,在分组内部根据 COL2排序,而此函数计算的值就表示每组 ...
- Oracle分析函数-rank() over(partition by...order by...)
select *from ( SELECT t.s#,---学号 t.c#,---课程号 T.SCCORE, ---成绩 RANK() OVER(PARTITION BY t.c# ORDER BY ...
- MySQL中实现Oracle里面 rank()over ( PARTITION BY ORDER BY) 分类分组功能
各班级学生成绩测试表 select * from TMP_A; 实现目的: 按照班级分类后按照分数倒序排序 采用MySQL变量简单实现,SQL如下: SELECT a.stu_id,a.point, ...
- Oracle高级函数:rank over partition by
高级函数,分组排序 over: 在什么条件之上. partition by e.deptno: 按部门编号划分(分区). order by e.sal desc: 按工资从高到低排序(使用rank() ...
- mysql col与row_使用mysql实现row_number() over(partition by col1 order by col2)函数
[color=red]row_number() OVER (PARTITION BY COL1 ORDER BY COL2)[/color] 表示根据COL1分组,在分组内部根据 COL2排序,而此函 ...
- Row_number () over (partition by col1 order by col2)的用法
ROW_NUMBER() OVER (PARTITION BY COL1 ORDER BY COL2) --(其中,COL1,COL2可以为多列) select xt.id, xt.it ...
最新文章
- 国民认证科技有限公司助力构建我国可信网络空间
- html/css——注意事项
- Android-实现切换Fragment页功能
- 机器视觉:mvs相机调试
- C++学习笔记之——引用 内联函数
- 雷军反省今天的小米:无法躺赢或猛冲猛打,只能豁出去干
- 【Linux网络编程学习】预备知识(网络字节序、IP地址转换函数、sockaddr数据结构)
- docker登录mysql数据库_从docker容器连接到远程MySQL数据库
- Linux CentOS修改网卡IP/网关设置
- 大数据电影可视化系统
- 可口可乐中国联袂青年志发布《中国青年「在乎力」报告》
- 【C++OJ多重继承与虚拟继承】商旅信用卡(多重继承)
- 七彩背景(Background)
- 有必要说一说即将到来的春招(经历+重要性+如何准备)
- java 累加器_09-flink-Accumulator(累加器)
- datagrip对Oracle支持不好,datagrip 连接oracle
- Linux命令之查看行号
- ISO-8601,日期时间格式表示法的国际标准
- 【送两本】计算机领域神书《深入理解计算机系统》
- Excel删除重复数据java_合并Excel范围中的数据,删除空白和重复项