最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql數(shù)據(jù)庫(kù)之count()函數(shù)和sum()函數(shù)用法及區(qū)別說(shuō)明

 更新時(shí)間:2023年06月19日 10:56:36   作者:white_ice  
這篇文章主要介紹了mysql數(shù)據(jù)庫(kù)之count()函數(shù)和sum()函數(shù)用法及區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

mysql之count()和sum()用法及區(qū)別

1、mysql 數(shù)據(jù)庫(kù)中 count() 函數(shù)是統(tǒng)計(jì)查詢結(jié)果中的行數(shù),例如我們有下表 user_auth

使用 count() 函數(shù)來(lái)查詢結(jié)果個(gè)數(shù),使用如下查詢:

mysql > select count(*) from user_auth ;? ?

注意的是,count 會(huì)忽略掉 NULL 的結(jié)果, 所以 count(字段名) 這樣使用的話,如果字段中包含為null的結(jié)果,將導(dǎo)致查詢結(jié)果不準(zhǔn)確,我們將表中數(shù)據(jù)更改如下:

此時(shí)查詢:

mysql > select count(user_id) from user_auth;

結(jié)果如下:

2、mysql sum() 函數(shù)用于計(jì)算某一字段中所有行的數(shù)值之和( sum 求和時(shí)會(huì)對(duì) null 進(jìn)行過(guò)濾,不計(jì)算),例如如下查詢:

mysql > select sum(user_id) from user_auth; 

結(jié)果如下:

另外也能使用 sum(條件) 進(jìn)行對(duì)符合條件的結(jié)果行數(shù)進(jìn)行求和,如下查詢:

mysql > select sum(user_id is null),sum(aid = 1) from user_auth; 

結(jié)果如下:

需要注意的是,如果在沒(méi)有返回行中使用 sum() 函數(shù),sum 函數(shù)的返回值為 null,不是 0,例:

mysql > select sum(user_id) from user_auth where id not in (2,4,6);

結(jié)果如下:

此時(shí)使用JDBC或者一些第三方框架進(jìn)行映射時(shí)就會(huì)報(bào)錯(cuò),

解決辦法是

使用IFNULL(sum(user_id),0) 或者 COALESCE(sum(user_id),0) 進(jìn)行結(jié)果的轉(zhuǎn)換。

mysql中sum()和count()函數(shù)按條件統(tǒng)計(jì)數(shù)據(jù)

sum()函數(shù)

一般求和

select sum(money) from user group by id;

按條件求和 (對(duì)所有金額大于100的數(shù)據(jù)進(jìn)行求和)

select sum(if(money>=100,money,0)) from user group by id;

聚合函數(shù)中如果想?yún)R總某一類(lèi)數(shù)據(jù)的數(shù)量,可以在括號(hào)中增加條件:

sum(case when 字段>0 then 1 else 0 end) as 字段

count()函數(shù)

要注意的是:count(case when 字段>0 then 1 else 0 end) as 字段,這樣寫(xiě)的話

count函數(shù)不管記錄內(nèi)容是0或1,它的作用只是計(jì)算記錄數(shù),計(jì)算出來(lái)的是0和1的全部次數(shù),如果你要計(jì)算次數(shù),用sum(case when 字段>0 then 1 else 0 end) as 字段

或者你用 count(case when 字段>0 then 1 else null end) as 字段 這種寫(xiě)法

基本原理是 使用了數(shù)據(jù)庫(kù)count(null)時(shí)返回的是0 ,count(非null)返回是1

SQL的執(zhí)行順序

  • 第一步:執(zhí)行FROM
  • 第二步:WHERE條件過(guò)濾
  • 第三步:GROUP BY分組
  • 第四步:執(zhí)行SELECT投影列
  • 第五步:HAVING條件過(guò)濾
  • 第六步:執(zhí)行ORDER BY 排序

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • mysql異常占用資源排查

    mysql異常占用資源排查

    本文詳細(xì)介紹了通過(guò)MySQL的全局變量檢查日志狀態(tài),監(jiān)控連接數(shù)及啟用和調(diào)整慢查詢記錄,以幫助排查數(shù)據(jù)庫(kù)性能問(wèn)題,感興趣的可以了解一下
    2025-07-07
  • 軟件測(cè)試-MySQL(六:數(shù)據(jù)庫(kù)函數(shù))

    軟件測(cè)試-MySQL(六:數(shù)據(jù)庫(kù)函數(shù))

    這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)函數(shù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • mysql實(shí)現(xiàn)數(shù)據(jù)文件存儲(chǔ)到指定分區(qū)的示例代碼

    mysql實(shí)現(xiàn)數(shù)據(jù)文件存儲(chǔ)到指定分區(qū)的示例代碼

    MySQL中可以使用分區(qū)表來(lái)提高數(shù)據(jù)檢索速度,本文主要介紹了mysql實(shí)現(xiàn)數(shù)據(jù)文件存儲(chǔ)到指定分區(qū)的示例代碼,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • 登錄MySQL數(shù)據(jù)庫(kù)最快幾步(圖文步驟詳解)

    登錄MySQL數(shù)據(jù)庫(kù)最快幾步(圖文步驟詳解)

    當(dāng)?MySQL?服務(wù)開(kāi)啟后,就可以通過(guò)客戶端來(lái)登錄?MySQL?數(shù)據(jù)庫(kù)了。在?Windows?操作系統(tǒng)下可以使用?DOS?命令登錄數(shù)據(jù)庫(kù),本節(jié)將介紹使用命令方式登錄?MySQL?數(shù)據(jù)庫(kù)的方法
    2023-10-10
  • MySQL不使用子查詢的原因及優(yōu)化案例

    MySQL不使用子查詢的原因及優(yōu)化案例

    對(duì)于mysql,不推薦使用子查詢,效率太差,執(zhí)行子查詢時(shí),MYSQL需要?jiǎng)?chuàng)建臨時(shí)表,查詢完畢后再刪除這些臨時(shí)表,所以,子查詢的速度會(huì)受到一定的影響,本文給大家詳細(xì)介紹了MySQL不使用子查詢的原因及優(yōu)化案例,需要的朋友可以參考下
    2025-01-01
  • mysql 中文亂碼 解決方法集錦

    mysql 中文亂碼 解決方法集錦

    主要是針對(duì) 1.4x版本的一些亂碼問(wèn)題,其實(shí)新版本中錯(cuò)誤也差不多,大家注意下編碼問(wèn)題。
    2009-06-06
  • MySQL字符之char、varchar類(lèi)型簡(jiǎn)析

    MySQL字符之char、varchar類(lèi)型簡(jiǎn)析

    varchar和char是MySQL中的兩種數(shù)據(jù)類(lèi)型,都是用來(lái)存儲(chǔ)字符串的,下面這篇文章主要給大家介紹了關(guān)于MySQL字符之char、varchar類(lèi)型的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • 安裝MySQL后include目錄下沒(méi)有找到libmysql.lib

    安裝MySQL后include目錄下沒(méi)有找到libmysql.lib

    安裝了MySQL后,在其安裝目錄下的include文件夾并沒(méi)有找到libmysql.lib,主要原因是在安裝MySQL的時(shí)候,沒(méi)有勾選develop component這一選項(xiàng)造成的
    2014-08-08
  • MySQL中空值Null和空字符‘‘的具體使用

    MySQL中空值Null和空字符‘‘的具體使用

    本文主要介紹了MySQL中空值Null和空字符''的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • 簡(jiǎn)單實(shí)現(xiàn)MySQL服務(wù)器的優(yōu)化配置方法

    簡(jiǎn)單實(shí)現(xiàn)MySQL服務(wù)器的優(yōu)化配置方法

    我們今天主要向大家描述的是MySQL服務(wù)器的優(yōu)化配置的時(shí)機(jī)操作步驟,以及在MySQL服務(wù)器的優(yōu)化配置的的過(guò)程中值得我們主義的事項(xiàng)的介紹。
    2011-03-03

最新評(píng)論

鄯善县| 天门市| 临漳县| 鄂伦春自治旗| 酒泉市| 澄江县| 聂荣县| 日土县| 合肥市| 阜南县| 依安县| 永新县| 长岛县| 根河市| 揭阳市| 宜兰县| 乌鲁木齐市| 梨树县| 甘泉县| 新安县| 茶陵县| 怀柔区| 大渡口区| 清远市| 化德县| 黄梅县| 萝北县| 陇西县| 西充县| 隆尧县| 寿宁县| 合水县| 大庆市| 从化市| 邵武市| 文山县| 西丰县| 天门市| 毕节市| 白河县| 霍林郭勒市|