|
本帖最后由 notou413 于 2017-2-13 11:49 编辑
create table ot_HOUR as
select '部门编号1' dept, 2 value from dual union all
select '部门编号2',4 from dual union all
select '部门编号3',5 from dual union all
select '部门编号4',10 from dual union all
select '部门编号5',13 from dual union all
select '部门编号6',17 from dual union all
select '部门编号7',25 from dual;
create table departMENTS as
select 'TEAM1' team, '部门编号1' dept from dual union all
select 'TEAM1', '部门编号2' from dual union all
select 'TEAM1', '部门编号3' from dual union all
select 'TEAM2', '部门编号4' from dual union all
select 'TEAM2', '部门编号5' from dual union all
select 'TEAM3', '部门编号6' from dual union all
select 'TEAM4', '部门编号7' from dual;
SELECT /*T1.DEPT,T2.TEAM,*/NVL(T1.DEPT, T2.TEAM) DEPT_TEAM , SUM(T1.VALUE) sums
FROM OT_HOUR T1, DEPARTMENTS T2
WHERE T1.DEPT = T2.DEPT(+)
GROUP BY GROUPING SETS((T1.DEPT),(T2.TEAM))
ORDER BY SUMS,T1.DEPT,T2.TEAM;
DEPT_TEAM SUMS
--------- ----------
部门编号1 2
部门编号2 4
部门编号3 5
部门编号4 10
TEAM1 11
部门编号5 13
部门编号6 17
TEAM3 17
TEAM2 23
部门编号7 25
TEAM4 25
11 rows selected
|
|