iT邦幫忙

2021 iThome 鐵人賽

DAY 15
0
自我挑戰組

Oracle資料庫系列 第 15

[Day15]彙總函數(分組函數)

  • 分享至 

  • xImage
  •  

彙總函數是以多筆資料列為基礎,輸入的資料列經過函數運算後,一組只會輸出一個值,基本特性如下:

  1. 可將一張資料表中的所有資料分為一個或多個群組。
  2. 在SELECT子句中,可以和單列函數一起使用。
  3. 也可巢狀使用,從最外層往外傳值給外層的彙總函數。

以下列出常見的五種彙總函數:

  1. AVG:輸出n個值的平均,忽略空值。
    說明:DISTINCT表示重複值只計算一次,兒ALL表示所有值會累計並平均。

  2. COUNT:計算資料列總比數,忽略空值。(*表示將空值納入計算)
    說明:表述式expr用來計算非空值的資料筆數。

  3. MAX:輸出同組資料中的最大值。

  4. MIN:輸出同組資料中的最小值。

  5. SUM:輸出同組資料中的總合值。

接下來要介紹使用WHERE子句過濾條件參加分組匯總(未分組的資料):

  1. 在SELECT子句內,如果同時使用WHERE和GROUP BY,前者一定要在前面。
  2. WHERE子句內不可使用分組函數。
  3. ORDER BY子句一定在最後一列輸入。

最後是使用HAVING子句過濾條件參加分組匯總(分組後的資料):

  1. HAVING子句內的條件比較運算元一定要是彙總函數。
  2. HAVING子句一定要在GROUP BY子句之後。

下篇會列出一寫簡單的實作例題!


上一篇
[Day14]資料表合併實做
下一篇
[Day16]彙總函數實作
系列文
Oracle資料庫30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言