聚合函數(1)
本小節介紹 MySQL 常見的聚合函數,實際業務中諸如 總數、平均值、總和 這樣的數據是沒有存儲在數據表中,如需要獲取這些數據時,使用 MySQL 的聚合函數可以獲取它們,MySQL 主要的聚合函數有 AVG、COUNT、SUM、MIN、MAX,本小節介紹 AVG、COUNT、SUM。
1. AVG函數求平均值
以 teacher 表為例,先查所有 teacher 信息:
SELECT * FROM teacher;
查詢結果如下圖:
可以使用 AVG()
函數求出全部教師平均年齡:
SELECT AVG(age) FROM teacher;
執行結果如下圖:
Tips:如上圖所示,
AVG(age)
表示對結果集 age 列取平均值 40.6667。
2.COUNT函數統計總條數
以 student 表為例,先查看所有 student 信息:
SELECT * FROM student;
查詢結果如下圖:
可以使用 COUNT()
函數統計全部學生數量:
SELECT COUNT(*) FROM student;
執行結果如下圖:
也可以對某一列使用 COUNT()
函數:
SELECT COUNT(id) FROM teacher;
執行結果如下圖:
Tips:如上圖所示,
COUNT(*)
或者COUNT(id)
表示統計全部結果集條數 10,注意 COUNT() 函數也會對 NULL 值的數據進行統計。
3.SUM函數統計總和
以 teacher 表為例,獲取所有教師年齡總和:
SELECT SUM(age) FROM teacher;
執行結果如下圖:
Tips:如上圖所示,
SUM(age)
表示對結果集age
列求總和488
。
4.小結
本小節介紹了如何使用 AVG、COUNT、SUM 三種聚合函數分別對結果集求平均值、統計總條數、求總和,需要注意的是 AVG、SUM 聚合函數會忽略值為 NULL 的數據,而 COUNT 函數也會對 NULL 值的數據條數加入到統計中。