本文將介紹 SQL 中的聚合函數(Aggregate Functions),聚合函數(Aggregate Functions)對於進行數據分析來說非常重要,接下來將透過範例程式碼來說明聚合函數(Aggregate Functions)的應用。
開始介紹聚合函數(Aggregate Functions)之前,先把接下來要用到的範例資料表創建起來。
創建 Employees
表的SQL命令
CREATE TABLE Employees (
ID INT PRIMARY KEY,
Name VARCHAR(50),
Department VARCHAR(50),
Position VARCHAR(50),
Salary DECIMAL(10, 2),
HireDate DATE
);
插入測試數據 :
INSERT INTO Employees (ID, Name, Department, Position, Salary, HireDate) VALUES
(1, '張三', '財務部', '會計', 4500.00, '2020-01-15'),
(2, '李四', '市場部', '市場經理', 6000.00, '2019-06-23'),
(3, '王五', '人事部', 'HR專員', 4000.00, '2021-03-12'),
(4, '趙六', '財務部', '財務分析師', 5500.00, '2018-11-05'),
(5, '孫七', '市場部', '市場助理', 3800.00, '2022-02-20'),
(6, '周八', '技術部', '軟體工程師', 7000.00, '2021-08-15'),
(7, '吳九', '技術部', '數據分析師', 6800.00, '2019-12-01');
聚合函數用於對一組值執行計算,並返回單個值。這些函數通常用於數據庫查詢中,以對特定列的數據進行統計分析。
COUNT()
函數COUNT()
函數用於計算表中符合特定條件的行數。
SELECT COUNT(*) FROM Employees;
這個查詢將返回 Employees
表中的行數。
SUM()
函數SUM()
函數用於計算數值列中所有值的總和。
SELECT SUM(Salary) FROM Employees;
這個查詢計算 Employees
表中所有員工的薪資總和。
AVG()
函數AVG()
函數用於計算數值列的平均值。
SELECT AVG(Salary) FROM Employees;
這個查詢計算 Employees
表中員工薪資的平均值。
MAX()
和 MIN()
函數MAX()
函數和 MIN()
函數分別用於找出列中的最大值和最小值。
SELECT MAX(Salary) FROM Employees;
SELECT MIN(Salary) FROM Employees;
這兩個查詢分別找出 Employees
表中員工薪資的最大值和最小值。
除了基本的用法,聚合函數還可以與 GROUP BY
語句結合使用,對數據進行分組統計。
GROUP BY
進行分組GROUP BY
語句通常與聚合函數一起使用,用於將數據分組並對每個組應用聚合函數。
SELECT Department, AVG(Salary)
FROM table_name
GROUP BY Department;
這個查詢按部門對員工的薪資進行分組,然後計算每個部門的平均薪資。
HAVING
語句當需要對聚合結果進行過濾時,可以使用 HAVING
語句。它類似於 WHERE
語句,但用於聚合結果。
SELECT Department, AVG(Salary)
FROM Employees
GROUP BY Department
HAVING AVG(Salary) > 5000;
這個查詢找出平均薪資超過5000的部門。
😊 感謝你的耐心閱讀,若是你喜歡這篇內容,可以透過以下方式表達你的喜歡 😊