rollup 配合 goup by 命令使用,可以提供信息汇总功能(类似于"小计")
下面是一个简单例子:
SQL> select job,deptno,sal from emp;
JOB DEPTNO SAL
--------- --------- ---------
CLERK 20 800
SALESMAN 30 1600
SALESMAN 30 1250
MANAGER 20 2975
SALESMAN 30 1250
MANAGER 30 2850
MANAGER 10 2450
ANALYST 20 3000
PRESIDENT 10 5000
SALESMAN 30 1500
CLERK 20 1100
CLERK 30 950
ANALYST 20 3000
CLERK 10 1300
已选择14行。
SQL> select job,deptno,sum(sal) total_sal from emp group by rollup(job,deptno);
JOB DEPTNO TOTAL_SAL
--------- --------- ---------
ANALYST 20 6000
ANALYST 6000
CLERK 10 1300
CLERK 20 1900
CLERK 30 950
CLERK 4150
MANAGER 10 2450
MANAGER 20 2975
MANAGER 30 2850
MANAGER 8275
PRESIDENT 10 5000
PRESIDENT 5000
SALESMAN 30 5600
SALESMAN 5600
29025
已选择15行。
oracle的rollup
最新推荐文章于 2024-07-29 15:01:12 发布
本文通过一个具体的 SQL 查询实例,介绍了如何使用 rollup 子句配合 group by 对数据进行汇总,实现类似“小计”的功能。展示了不同职位在各个部门的薪资总和,并提供了整体薪资总额。
2210

被折叠的 条评论
为什么被折叠?



