Oracle中GROUP BY的進階用法

來源:互聯網
上載者:User

前面介紹了分組函數的基本用法,下面介紹幾種關於GROUP BY更進階的用法。

1、ORACLE資料庫中的ROLLUP配合GROUP BY命令使用,可以提供資訊匯總功能(與"小計" 相似)

SQL> SELECT deptno, job,sum(sal) from emp1 group by deptno,job

2  order by deptno,job;

DEPTNO JOB                           SUM(SAL)

---------- --------------------------- ----------

10 CLERK                             1300

10 MANAGER                           2450

10 PRESIDENT                         5000

20 ANALYST                           6000

20 CLERK                             1900

20 MANAGER                           2975

30 CLERK                              950

30 MANAGER                           2850

30 SALESMAN                          5600

40 SALESMAN                          6000

//會對每一個不同的dept,job產生一行獨立的結果

1  SELECT deptno, job,sum(sal) from emp1

2  group by rollup(deptno,job)

3* order by deptno,job

SQL> /

DEPTNO JOB                           SUM(SAL)

---------- --------------------------- ----------

10 CLERK                             1300

10 MANAGER                           2450

10 PRESIDENT                         5000

10                                   8750

20 ANALYST                           6000

20 CLERK                             1900

20 MANAGER                           2975

20                                  10875

30 CLERK                              950

30 MANAGER                           2850

30 SALESMAN                          5600

30                                   9400

40 SALESMAN                          6000

40                                   6000

35025

//結果中除了上述的結果結果之外,還會對每一個deptno進行一個小結,並單獨產生一行,除此之 外還會對所有的sal求和並產生一行。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.