欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【用SQL语句生成带有小计合计的数据集脚本】,下面是详细的分享!
用SQL语句生成带有小计合计的数据集脚本
使用SQL语句生成带有小计合计的数据集:
测试用户: scott
测试用表: dept,emp
//////////////////////////////////
//检索出需要进行统计的数据集
select dept.dname,emp.job,sal from emp,dept
where emp.deptno=dept.deptno;
//////////////////////////////////
//根据部门名称以及职位进行汇总,并为每个部门
生成'小计',最后生成'合计'.
select
decode(grouping(dept.dname),1,'合计:',dept.dname)dname,
decode(grouping(emp.job)+grouping(dept.dname),1,'小计:',emp.job)job,sum(sal) sum_sal from emp,dept where emp.deptno=dept.deptno group by rollup(dept.dname,emp.job);
运行结果如下:
SQL> select dept.dname,emp.job,sal from emp,d
DNAME JOB SAL
-------------- --------- ----------
RESEARCH CLERK 800
SALES SALESMAN 1600
SALES SALESMAN 1250
RESEARCH MANAGER 2975
SALES SALESMAN 1250
SALES MANAGER 2850
ACCOUNTING MANAGER 2450
RESEARCH ANALYST 3000
ACCOUNTING PRESIDENT 5000
SALES SALESMAN 1500
RESEARCH CLERK 1100
DNAME JOB SAL
-------------- --------- ----------
SALES CLERK 950
RESEARCH ANALYST 3000
ACCOUNTING CLERK 1300
已选择14行。
SQL> select
2 decode(grouping(dept.dname),1,'合计:',de
3 decode(grouping(emp.job)+grouping(dept.d
ept where emp.deptno=dept.deptno group by rol
DNAME JOB SUM_SAL
-------------- --------- ----------
ACCOUNTING CLERK 1300
ACCOUNTING MANAGER 2450
ACCOUNTING PRESIDENT 5000
ACCOUNTING 小计: 8750
RESEARCH ANALYST 6000
RESEARCH CLERK 1900
RESEARCH MANAGER 2975
RESEARCH 小计: 10875
SALES CLERK 950
SALES MANAGER 2850
SALES SALESMAN 5600
DNAME JOB SUM_SAL
-------------- --------- ----------
SALES 小计: 9400
合计: 29025
已选择13行。
SQL>
以上所分享的是关于用SQL语句生成带有小计合计的数据集脚本,下面是编辑为你推荐的有价值的用户互动:
相关问题:写一个SQL语句:请将数据库中的相同记录取出,并计...
答:select id,name,sun(value) as value from 表名 group by id,name order by id >>详细
相关问题:SQL 在表中增加小计、合计
答:--建表create table T(序号 Varchar(10),编码 Varchar(10),A仓库 Varchar(10),A数量 int,B仓库 Varchar(10),B数量 int)--插入测试数据insert into T values(1,111,'A',10,'B',20)insert into T values(2,111,'A',30,'B',null)insert into T valu... >>详细
相关问题:SQL 在表中增加小计、合计
答:用 sum( A库存) over(paritition by a代码 ) 得到A的合计 用 sum( B库存) over(paritition by b代码 ) 得到B的合计 同时这两个可以相加的。你试试 >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
