rank()在Oracle中可用于排名,属于分析函数,rank() over ([partition by 分区字段1[,分区字段2...] order by 排序字段 asc|desc)。

分区字段可有多个,用逗号分隔,也可使用函数,如rank over (partition by 部门,trunc(日期,'mm') order by 钱 asc),,这样就分部门按月份对发的钱进行排序。asc是升,desc是降。

rank()的排名是不连续的,如果存在并列名次的话,如并列第一后面就是第三名,要得到连续排名,如并列第一后为第二,就要用dense_rank()代替rank(),其余一样。

null在rank()中会排在最前面,可在最后加nulls last把null值扔到最后,如rank() over ([partition by 分区字段1[,分区字段2...] order by 排序字段 asc|desc nulls last)。

使用中,rank不用单独成一列,在SQL语句中的位置与使用比较灵活,如

select 部门,姓名,decode(部门,'总经理室',case when rank() over (partition by 公司,部门,trunc(发薪日期,'mm') order by 工资 desc)<=3 then '很多' else '呵呵' end,'嘿嘿') 评价 from 工资表 where 公司='xxx’

上面随便写的,不知道有没有语法错误,大体意思是这样,只对某公司的总经理室每月的排名进行处理,其它的不处理(当然排名是有排名,只是在语句里不用处理)。

oracle rank 语法_Oracle用于排名的函数相关推荐

  1. oracle rank 语法_Oracle排名函数(Rank)实例详解

    -- 已知:两种排名方式 ( 分区和不分区 ): 使用和不使用 partition -- 两种计算方式 ( 连续 , 不连续 ), 对应函数: dense_rank,rank ·查询原始数据:学号 , ...

  2. oracle rank 语法_oracle rank函数怎么用

    首先创建示例表,再初始化几条测试数据 create table t_score ( id number primary key, student_id  number(3), student_name ...

  3. oracle rank 语法_Oracle-- (RANK) 排名函数

    内容来自: Oracle® Database SQL Language Reference 11g Release 2 (11.2) E41084-03. empolyees表来自hr方案. RANK ...

  4. oracle unpivot 索引_oracle pivot 和 unpivot 函数的使用

    pivot的格式 select from ( inner_query) pivot(aggreate_function for pivot_column in ( list of values)) o ...

  5. oracle unused 语法_Oracle教程之设置为unused 后如何恢复 ?

    用DBA账户完成下列操作. 1. 得到表的obj# select obj# from obj$ where name='表名'; 2. 修改cols select cols from tab$ whe ...

  6. Oracle笔记 之 分组统计排名函数dense_rank/rank()-over()函数

    分组统计排名函数 解析 dense_rank/rank()-over()用于对数据进行统计排名. rank-over()函数对相同的统计值的排名相同,不同的统计值之间的排名不连续(相同统计值的排名均为 ...

  7. Oracle中排名排序函数,ROW_NUMBER、RANK、DENSE_RANK、NTILE、的简介

    1.ROW_NUMBER() 定义:ROW_NUMBER()函数作用就是将select查询到的数据进行排序,每一条数据加一个序号,他不能用做于学生成绩的排名,一般多用于分页查询,  比如查询前10个 ...

  8. oracle用于限制分组函数的返回值,Oracle考试试题(带答案)

    一.选择(每题3分) 1) 当Oracle服务器启动时,下列哪种文件不是必须的(). a) 数据文件 b) 控制文件 c) 日志文件 d) 归档日志文件 参考答案 D 2) 在Oracle中,当用户要 ...

  9. Oracle存储过程语法

    原文链接:http://www.jb51.net/article/31805.htm Oracle存储过程基本语法 存储过程  1 CREATE OR REPLACE PROCEDURE 存储过程名  ...

最新文章

  1. R语言ggplot2可视化增加坐标轴的刻度数实战:自定义坐标轴刻度粒度、增加坐标轴刻度的粒度、更加精细地表达
  2. 全卷积网络FCN详解
  3. Timer与ScheduledExecutorService间的选择
  4. java运行时异常的特点是什么_java异常详解
  5. RTMPDump源代码分析 0: 主要函数调用分析
  6. 【NOIP2017Day1T3】【洛谷P3953】逛公园
  7. java中obj_Java中Object类的详细介绍
  8. 什么是 CDN 边缘服务器 - Edge Server
  9. 知乎8.5k赞的回答:自学编程需要注意什么?
  10. 更新应用程序安卓apk时出现解析程序包时出现问题
  11. 单词 of 《cyberspace :if you don't love it ,leave it 》
  12. OpenCV | 直线拟合fitline函数(Python)
  13. vue+Element中append-to-body的使用
  14. MIT计算机科学录取分数线,美国麻省理工学院分数录取线
  15. 美团点评技术年货分享
  16. 机器学习系列5-梯度下降法
  17. Cocos2dx 3.6.1运行html5的测试例子
  18. 两个一般性矩阵互相相似的条件
  19. win7文件夹工作组指定计算机共享,win7共享文件夹如何设置成指定IP访问-win7设置共享文件夹,win7共享文件后无权限访问...
  20. 华三交换机开启telnet ssh https登陆方式

热门文章

  1. 作业3.1png图像格式文件解析
  2. 机器视觉 基于XAVIS机器视觉组态软件的尺寸测量
  3. 5G网络的主要特性、关键技术及其发展趋势 : 奇点临近——中国如何迎接未来的5G网络革命?
  4. 公司中老板喜欢什么样的员工
  5. 给elementui的dialog标题下方添加一条线提升观感效果
  6. 商务部对韩多晶硅反倾销期中进行复审调查
  7. #VUE CLI 脚手架的安装及初识脚手架(一)
  8. kendoui ajax,kendoUI如何刷新数据源
  9. 游戏引擎Flax Engine源码分析(三)渲染2
  10. PAT乙级 1002 写出这个数