我已经搜索(但找不到)Oracle 11g 的一个非常基本/介绍性的解释ROLLUP
。从下面的查询中,我似乎得到了未包含在ROLLUP
子句中的任何表达式的小计。这个对吗?我将不胜感激一个基本而详细的解释。
编辑:刚刚发现这篇文章- 帮助了一点,但我仍然不完全在那里。
查询 1
SELECT department_id, job_id, SUM(salary) FROM employees
WHERE department_id > 89
GROUP BY department_id, job_id;
结果 1
DEPARTMENT_ID JOB_ID SUM(SALARY)
110 AC_ACCOUNT 8300
90 D_VP 34000
110 AC_MGR 12008
90 AD_PRES 24000
100 FI_MGR 12008
100 FI_ACCOUNT 39600
查询 2
SELECT department_id, job_id, SUM(salary) FROM employees
WHERE department_id > 89
GROUP BY department_id, ROLLUP(job_id);
结果 2
DEPARTMENT_ID JOB_ID SUM(SALARY)
90 AD_VP 34000
90 AD_PRES 24000
90 58000
100 FI_MGR 12008
100 FI_ACCOUNT 39600
100 51608
110 AC_MGR 12008
110 AC_ACCOUNT 8300
110 20308