oracle中的彙總函式count、max、min、sum、avg等等

來源:互聯網
上載者:User

前面我們介紹了很多oracle中單行函數,在oracle中還存在另一類函數,那就是彙總函式,oracle中的彙總函式非常有用,主要是用來做些統計、平均之類的工作,你必須牢記。

先簡單介紹一下幾個常用的oracle中的彙總函式。

Oracle中彙總函式名稱

函數的作用

Count

用來求有效資料的數量

Max

用來求給定資料中最大的那一個資料

Min

用來求給定資料中最小的那一個資料

Avg

用來求給定資料的平均值

Sum

用來求給定資料的總和

Variance

用來求給定資料的標準差

Stddev

用來求給定資料的方差

先面是一些例子和注意事項。

1 .對於彙總函式,如果給定的值中存在空值的話,oracle將會直接忽略。

例如,對於scott的schema中有表emp;

Select count(*) from emp;

將會得到結果:

COUNT(*)

———-

14

但是我們注意到在Mgr列中有一列是空值,於是

Select count(mgr) from emp;

將會得到如下結果。

select COUNT(MGR)

———-

13

也就是說,oracle忽略了其中的空值。

當然對sum,max,min,avg等其他彙總函式都是如此。

例如select sum(comm) from emp;將會自動忽略掉一部分空值的資料。

2.對於彙總函式中可以使用distinct關鍵字來壓縮重複值。

比如我們想統計總共有多少個部門的話

我們如果寫

Select count(deptno) from emp;

將會得到錯誤的結果。因為實際上有很多重複的值也被計算在內。為了找到正確的答案,你應該這樣寫。

Select count(distinct deptno) from emp;

3.單獨使用oracle中的彙總函式 可能用途還是有限,更經常使用的是彙總函式和group by 關鍵字結合起來使用。這一點我們稍後介紹。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.