给群里的哥们写的sql(row_number、rank、dense_rank)
来源:互联网 发布:java导出jar包 编辑:程序博客网 时间:2024/06/05 14:38
<span style="font-size:18px;">最近精力比较有限,有些常用的东西就先记录下来。方便以后自己查阅和总结。</span>
一个哥们想要实现如下效果:
DEPTNO ENAME SAL TOP3 部门工资 排序---------- ---------- ---------- ---------- 20 KING 5000 1 8750 2 20 CLARK 2450 2 8750 2 20 MILLER 1300 3 8750 2 10 SCOTT 3000 1 8975 1 10 FORD 3000 2 8975 1 10 JONES 2975 3 8975 1 30 BLAKE 2850 1 5950 3 30 ALLEN 1600 2 5950 3 30 TURNER 1500 3 5950 3
从上图可以看出,他想要实现部门的总工资排名。这个就要用到我们常说的分析函数了。分析函数是什么,这里就不多说了。有兴趣的朋友,请自己查阅官方文档。
下面我们来实现上图的功能:
首先,第一步我们需要先求出每个部门的总工资,SQL如下:
select deptno, ename, sal, sum(sal) over(partition by deptno order by deptno) as sumsal from emp查询的结果集:
第二步,我们就要实现最终的功能,附上SQL:
select deptno, ename, sal, sumsal, row_number() over(partition by deptno order by sal) as "部门内排名", dense_rank() over(order by sumsal) as "部门排名" from (select deptno, ename, sal, sum(sal) over(partition by deptno order by deptno) as sumsal from emp)
结果集如下:
图片显示的效果,就是我们想要的最终结果。以后在附上相关分析函数的使用效果。今天就到这,上班了。。。。
0 0
- 给群里的哥们写的sql(row_number、rank、dense_rank)
- ROW_NUMBER、RANK、DENSE_RANK的用法
- ROW_NUMBER、RANK、DENSE_RANK的用法
- ROW_NUMBER、RANK、DENSE_RANK的用法
- SQL Server中Row_number(),Rank()和dense_rank()的用法
- SQL中ROW_NUMBER()/RANK() /DENSE_RANK() OVER函数的基本用法
- SQL Server2005杂谈(3):四个排名函数(row_number、rank、dense_rank和ntile)的比较
- SQL Server2005杂谈(3):四个排名函数(row_number、rank、dense_rank和ntile)的比较
- SQL Server2005杂谈(3):四个排名函数(row_number、rank、dense_rank和ntile)的比较
- SQL Server2005杂谈(3):四个排名函数(row_number、rank、dense_rank和ntile)的比较
- SQL Server2005 四个排名函数(row_number、rank、dense_rank和ntile)的比较
- SQL Server 2005 四个排名函数(row_number、rank、dense_rank和ntile)的比较
- 0021 Ms SQL 2005 四个排名函数(row_number、rank、dense_rank 和 ntile)的比较
- SqlServer 排名函数(row_number、rank、dense_rank)的比较
- SqlServer 排名函数(row_number、rank、dense_rank)的比较
- ROW_NUMBER、RANK、DENSE_RANK的用法(1)
- ROW_NUMBER、RANK、DENSE_RANK、NTILE的用法
- ROW_NUMBER、RANK、DENSE_RANK的用法 (加补充)
- shell 编写jar运行脚本并制定日志输入文件
- IOS数据持久化之Sqlite
- hadoop常见错误
- vs2005连接mysql数据库初步认识
- Android开发的环境搭建
- 给群里的哥们写的sql(row_number、rank、dense_rank)
- c/s架构和b/s架构的比较
- ADFS3.0 Customizing the AD FS Sign-in Pages
- 获取文件夹的大小(大小为字节数)
- jQuery调用JSON时,net.sf.json.JSONException: There is a cycle in the hierarchy
- oracle自动清理archivelog文件
- 易车网络汽车配件
- php 防止sql注入
- swift tableview 滚动到指定行列