mysql求和函數有兩種:1、count()函數,用於統計查詢結果中的行數;2、sum()函數,用於計算某一字段中所有行的數值之和。
本文操作環境:windows7系統、mysql 5.7版本、Dell G3電腦。
mysql求和函數是什麼?
count()
函數和sum()
函數
他們的用法和差異:
1、mysql 資料庫中count() 函數是統計查詢結果中的行數,例如我們有下表 user_auth :
#使用count() 函數來查詢結果個數,使用以下查詢:
mysql > select count(*) from user_auth ;
注意的是,count 會忽略掉NULL 的結果, 所以count(欄位名稱) 這樣使用的話,如果欄位中包含為null的結果,將導致查詢結果不準確,我們將表中資料變更如下:
#此時查詢:mysql > select count (user_id) from user_auth;結果如下:
#2、mysql 中sum() 函數用於計算某一字段中所有行的數值總和( sum 求和時會對null 進行過濾,不計算),例如如下查詢:
mysql > select sum(user_id) from user_auth; 結果如下:
另外也能使用sum(條件) 進行對符合條件的結果行數進行求和,如下查詢:
mysql > select sum(user_id is null),sum(aid = 1) from user_auth; 結果如下:
要注意的是,如果在沒有傳回行中使用sum() 函數,sum 函數的回傳值為null,不是0,例:
mysql > select sum(user_id) from user_auth where id not in (2,4,6 );結果如下:
此時使用JDBC或一些第三方框架進行映射時就會報錯,解決方法是:使用IFNULL(sum(user_id),0) 或COALESCE(sum(user_id),0) 進行結果的轉換。
【相關推薦:mysql影片教學】
#以上是mysql求和函數是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!