COMPUTE 可实现类似于rollup的分组求和功能:

 
  
  1. SQL> select deptno,ename,sum(sal) from scott.emp  group by rollup(deptno,ename);  
  2.  
  3.     DEPTNO ENAME        SUM(SAL)  
  4. ---------- ---------- ----------  
  5.         10 KING             5000  
  6.         10 CLARK            2450  
  7.         10 MILLER           1300  
  8.         10                  8750  
  9.         20 FORD             3000  
  10.         20 ADAMS            1100  
  11.         20 JONES            2975  
  12.         20 SCOTT            3000  
  13.         20 SMITH             800  
  14.         20                 10875  
  15.         30 WARD             1250  
  16.         30 ALLEN            1600  
  17.         30 BLAKE            2850  
  18.         30 JAMES             950  
  19.         30 MARTIN           1250  
  20.         30 TURNER           1500  
  21.         30                  9400  
  22.  
  23.     DEPTNO ENAME        SUM(SAL)  
  24. ---------- ---------- ----------  
  25.                            29025  
  26.  
  27.  
  28. SQL> BREAK ON report  
  29. SQL> select deptno,ename,sum(sal) empsal from scott.emp  group by deptno,ename;  
  30.  
  31.     DEPTNO ENAME          EMPSAL  
  32. ---------- ---------- ----------  
  33.         10 MILLER           1300  
  34.         30 MARTIN           1250  
  35.         10 KING             5000  
  36.         20 FORD             3000  
  37.         20 SMITH             800  
  38.         30 BLAKE            2850  
  39.         30 ALLEN            1600  
  40.         20 JONES            2975  
  41.         10 CLARK            2450  
  42.         30 TURNER           1500  
  43.         30 WARD             1250  
  44.         20 SCOTT            3000  
  45.         30 JAMES             950  
  46.         20 ADAMS            1100  
  47.                       ----------  
  48. sum                        29025  
  49.  
  50. SQL> break on deptno skip 1 on report  
  51. SQL> select deptno,ename,sum(sal) empsal from scott.emp  group by deptno,ename order by 1;  
  52.  
  53.     DEPTNO ENAME          EMPSAL  
  54. ---------- ---------- ----------  
  55.         10 CLARK            2450  
  56.            KING             5000  
  57.            MILLER           1300  
  58.  
  59.         20 ADAMS            1100  
  60.            FORD             3000  
  61.            JONES            2975  
  62.            SCOTT            3000  
  63.            SMITH             800  
  64.  
  65.         30 ALLEN            1600  
  66.            BLAKE            2850  
  67.            JAMES             950  
  68.            MARTIN           1250  
  69.            TURNER           1500  
  70.            WARD             1250  
  71.  
  72. **********            ----------  
  73. sum                        29025  
  74.  
  75. SQL> break on deptno skip 1 on report  
  76. SQL> compute sum label "小计:" of sal on deptno  
  77. SQL> compute sum label "总计:" of sal on report  
  78. select deptno,ename,sal from scott.emp order by deptno;
  79. SQL>   
  80.  
  81.     DEPTNO ENAME             SAL  
  82. ---------- ---------- ----------  
  83.         10 CLARK            2450  
  84.            KING             5000  
  85.            MILLER           1300  
  86. **********            ----------  
  87. 小计:                       8750  
  88.  
  89.         20 JONES            2975  
  90.            FORD             3000  
  91.            ADAMS            1100  
  92.            SMITH             800  
  93.            SCOTT            3000  
  94. **********            ----------  
  95. 小计:                      10875  
  96.  
  97.         30 WARD             1250  
  98.            TURNER           1500  
  99.            ALLEN            1600  
  100.            JAMES             950  
  101.            BLAKE            2850  
  102.            MARTIN           1250  
  103. **********            ----------  
  104. 小计:                       9400  
  105.  
  106.                       ----------  
  107. 总计:                      29025 

Formatting SQL*Plus Reports : http://docs.oracle.com/cd/B19306_01/server.102/b14357/ch6.htm