Mysql聚合函數的使用介紹
前言
聚合函數用來對表中的數據進行統計和計算。users表結構如下:
什麼是聚合函數
聚合函數是用來做簡單的數據統計的,比如說統計一下 “員工表” 中的平均工齡是多少年啊,員工表中一共有多少條記錄等等… 這些都需要使用到聚合函數。
聚合函數也被稱為 “匯總函數” ,在數據的查詢分析中,應用的十分廣泛。可以幫助我們實現對數據的求和、求最大值、求最小值、求平均值等等。
如果不指定統計的范圍,那麼聚合函數統計的范圍就是整張數據表,該章節我們所講解的 “聚合函數” 就是針對整張數據表范圍的。
聚合函數演示案例:(求員工表中的平均月收入是多少?)
SELECT AVG(sal + IFNULL(comm,0)) AS 平均工資 from t_emp; -- AVG:聚合函數,求平均值使用 -- IFNULL:IFNULL 函數的語法,當第一個參數的值為null 的時候,則返回第二個參數的值
PS:需要註意的地方,在聚合函數的返回結果集(無論是求和、最大值、最小值、還是求平均數),結果集隻有一個返回數據。
SUM 函數
SUN 函數用於求和,隻能用於數字類型;如果用於字符類型的數據,則統計結果為0;如果用於時間類型的數據的求和,則結果是毫秒數的相加。
SQL 語句演示 SUM函數 案例(統計 10、20 部門的員工的月薪的總和)
SELECT SUM(sal) FROM t_emp WHERE deptno IN (10, 20)
SQL 語句演示 SUM函數 案例(統計 ename(字段) 的綜合 )
SELECT SUM(ename) FROM t_emp WHERE deptno IN (10, 20)
count
使用count統計某個字段的總行數,要註意區分包含null和不包含null
//不包含null select count(user_id) from users; //8 //包含null select count(*) from users; //10
max與min
max和main函數用來求某一列的最大值/最小值
//求男生的最大年齡 select max(age) from user where gender = '男'; //6
sum
使用sum對某一列進行求和
//對age大於30的列進行求和 select sum(age) from users where age>30; //求平均年齡 select sum(age) / count(*) from usersl;
avg
avg函數用來計算列的平均值
//求男生的平均年齡,結果不準null列沒有計算在內 select avg(age) from users where gender = '男'; //將age為null的也計算在內 select avg(ifnull(age,0)) from users where gender = '男';
總結
- count函數用來求某一字段的行數不包含null,count(*)用來求總行數
- max\min函數用來計算某一列的最大\最小值
- sum函數對某一列進行求和
- avg函數用來計算平均數
- 在對列進行計算式,聚合函數會默認忽略值為null的記錄,使用ifnull進行null值的替換
到此這篇關於Mysql聚合函數的使用介紹的文章就介紹到這瞭,更多相關Mysql聚合函數內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!