SQL 聚合函數(Aggregate Functions)教學
🧭 簡介
聚合函數 (Aggregate Functions) 是 SQL 中用來對多筆資料進行運算、彙總或統計的函數。常見用途包括計算筆數、平均值、最大值、最小值與總和。
聚合函數通常與 GROUP BY 子句搭配使用,用於依群組彙總資料,例如計算各部門的平均薪資或每月銷售總額。
📘 常見聚合函數
函數名稱
功能說明
範例
COUNT()
計算筆數
SELECT COUNT(*) FROM employees;
SUM()
加總
SELECT SUM(salary) FROM employees;
AVG()
平均值
SELECT AVG(salary) FROM employees;
MIN()
最小值
SELECT MIN(age) FROM employees;
MAX()
最大值
SELECT MAX(age) FROM employees;
📊 COUNT()
COUNT() 用於計算資料筆數,可搭配 * 或指定欄位使用。
-- 計算所有員工數
SELECT COUNT(*) FROM employees;
-- 計算指定部門的員工數
SELECT COUNT(*) FROM employees WHERE department = 'IT';💡
COUNT(column_name)不會計算 NULL 值。
💰 SUM()
SUM() 用於數值欄位的總和。
📈 AVG()
AVG() 計算平均值。
📉 MIN() 與 MAX()
MIN() 取得最小值,MAX() 取得最大值。
🧩 GROUP BY 群組聚合
GROUP BY 用於依照一個或多個欄位分組,再進行彙總。
⚠️
GROUP BY後的 SELECT 子句中,只能包含群組欄位與聚合函數。
⚙️ HAVING 條件過濾群組
HAVING 用於篩選群組結果(不同於 WHERE 是篩選個別資料列)。
🧠 多層聚合與運算
聚合結果可以再進行數學運算或巢狀查詢:
🎯 小結
聚合函數能快速進行資料統計與彙總。
常與
GROUP BY、HAVING一起使用。聚合結果可搭配別名(
AS)提升可讀性。聚合函數會忽略
NULL值(除非使用COUNT(*))。
✅ 範例練習
Last updated