oracle 分析函数 RANK、DENSE_RANK、ROW_NUMBER
2014-03-20 20:43
501 查看
Row_number函数返回一个唯一的值,当碰到相同数据时,排名按照记录集中记录的顺序依次递增。
Dense_rank函数返回一个唯一的值,除非当碰到相同数据时,此时所有相同数据的排名都是一样的。
Rank函数返回一个唯一的值,除非遇到相同的数据时,此时所有相同数据的排名是一样的,同时会在最后一条相同记录和下一条不同记录的排名之间空出排名。
用SCOTT/TIGER登录。
查询表EMP:
结果:
创建EMP的副本EMP1:
然后修改一些数据:
查询表EMP1:
结果:
然后用分析函数查询:
结果:
Dense_rank函数返回一个唯一的值,除非当碰到相同数据时,此时所有相同数据的排名都是一样的。
Rank函数返回一个唯一的值,除非遇到相同的数据时,此时所有相同数据的排名是一样的,同时会在最后一条相同记录和下一条不同记录的排名之间空出排名。
用SCOTT/TIGER登录。
查询表EMP:
SELECT * FROM EMP;
结果:
创建EMP的副本EMP1:
CREATE TABLE EMP1 AS SELECT * FROM EMP;
然后修改一些数据:
UPDATE EMP1 SET SAL=6000 WHERE EMPNO=7839; UPDATE EMP1 SET SAL=2000 WHERE EMPNO=7499; COMMIT;
查询表EMP1:
SELECT * FROM EMP1;
结果:
然后用分析函数查询:
SELECT JOB, SUM(SAL), RANK() OVER (ORDER BY SUM(SAL) ASC), DENSE_RANK() OVER (ORDER BY SUM(SAL) ASC), ROW_NUMBER() OVER (ORDER BY SUM(SAL) ASC) FROM EMP1 GROUP BY JOB;
结果:
相关文章推荐
- oracle分析函数row_number、dense_rank、rank的区别
- Oracle的分析函数ROW_NUMBER、DENSE_RANK、RANKOracle的分析函数ROW_NUMBER、DENSE_RANK、RANK
- oracle rank/dense_rank/row_number 等分析函数总结
- oracle分析函数系列之rank,dense_rank,row_number:实现排名策略
- Oracle分析函数-排序排列(rank、dense_rank、row_number、ntile)
- oracle分析函数Rank, Dense_rank, row_number
- Oracle开发专题之:分析函数2(Rank, Dense_rank, row_number)
- oracle分析函数Rank, Dense_rank, row_number
- ORACLE分析函数(3)---rank,dense_rank,row_number
- 使用Oracle的分析函数ROW_NUMBER、DENSE_RANK、RANK
- Oracle开发专题之:分析函数2(Rank, Dense_rank, row_number)
- Oracle开发专题之:分析函数2(Rank, Dense_rank, row_number)
- oracle的“over partition by”的用法,over不能单独使用,要和分析函数:rank(),dense_rank(),row_number()等一起使用。
- 使用Oracle的分析函数ROW_NUMBER、DENSE_RANK、RANK
- 如何使用Oracle的分析函数ROW_NUMBER、DENSE_RANK、RANK
- Oracle开发专题之:分析函数2(Rank, Dense_rank, row_number)
- Oracle分析函数 — rank, dense_rank, row_number用法
- 数据库SQL中对查询结果排序排列序号编号,Oracle分析函数 rank,dense_rank,row_number使用和区别
- oracle分析函数系列之rank,dense_rank,row_number:实现排名策略
- Oracle开发之分析函数(Rank, Dense_rank, row_number)