溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

mysql如何統(tǒng)計(jì)查詢結(jié)果

發(fā)布時(shí)間:2022-06-21 09:49:23 來源:億速云 閱讀:2115 作者:iii 欄目:MySQL數(shù)據(jù)庫

本篇內(nèi)容介紹了“mysql如何統(tǒng)計(jì)查詢結(jié)果”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

在mysql中,可以使用COUNT()函數(shù)來統(tǒng)計(jì)查詢結(jié)果;該函數(shù)用于統(tǒng)計(jì)查詢結(jié)果的行數(shù),返回表中符合特定條件的記錄行數(shù)。COUNT()函數(shù)有三種語法:1、“COUNT(*)”,返回總行數(shù),包含NULL和非NULL值的行;2、“COUNT(字段名)”,返回不包含NULL值的行數(shù),會(huì)忽略空值行;3、“COUNT(DISTINCT 字段名)”,返回不包含NULL值的唯一行數(shù)。

本教程操作環(huán)境:windows7系統(tǒng)、mysql8版本、Dell G3電腦。

在mysql中,可以使用COUNT()函數(shù)來統(tǒng)計(jì)查詢結(jié)果。

MySQL COUNT()函數(shù)

COUNT()函數(shù)統(tǒng)計(jì)數(shù)據(jù)表中包含的記錄行的總數(shù),或者根據(jù)查詢結(jié)果返回列中包含的數(shù)據(jù)行數(shù)

COUNT()函數(shù)的返回類型為BIGINT。 如果沒有找到匹配的行,則COUNT()函數(shù)返回0。

COUNT()函數(shù)有三種語法:

COUNT(*)
COUNT(字段名)
COUNT(DISTINCT 字段名)

COUNT(*)

COUNT(*)函數(shù)返回由SELECT語句返回的結(jié)果集中的行數(shù)。COUNT(*)函數(shù)計(jì)算包含NULL和非NULL值的行,即:所有行。

如果使用COUNT(*)函數(shù)對表中的數(shù)字行進(jìn)行計(jì)數(shù),而不使用WHERE子句選擇其他列,則其執(zhí)行速度非常快。

這種優(yōu)化僅適用于MyISAM表,因?yàn)镸yISAM表的行數(shù)存儲(chǔ)在information_schema數(shù)據(jù)庫的tables表的table_rows列中; 因此,MySQL可以很快地檢索它。

COUNT(字段名)

COUNT(字段名)返回不包含NULL值的行數(shù)。

COUNT(DISTINCT 字段名)

COUNT(DISTINCT 字段名)返回不包含NULL值的唯一行數(shù)。

MySQL COUNT示例

  • 創(chuàng)建一個(gè)名為demo的新表,并插入一些示例數(shù)據(jù)

-- create a demos table
CREATE TABLE IF NOT EXISTS demos(
 id int auto_increment primary key,
 val int 
);

mysql如何統(tǒng)計(jì)查詢結(jié)果

-- insert some sample data
INSERT INTO demos(val)
VALUES(1),(1),(2),(2),(NULL),(3),(4),(NULL),(5);

mysql如何統(tǒng)計(jì)查詢結(jié)果

-- select data from demos table
SELECT * FROM demos;

mysql如何統(tǒng)計(jì)查詢結(jié)果

  • 計(jì)算demos表中的所有行,請使用COUNT(*)函數(shù)

SELECT COUNT(*) FROM demos;

mysql如何統(tǒng)計(jì)查詢結(jié)果

可以添加一個(gè)WHERE子句來指定一個(gè)條件來計(jì)數(shù),例如,只計(jì)算val列包含值等于2的行,使用以下查詢:

SELECT COUNT(*) FROM demos WHERE val = 2;

mysql如何統(tǒng)計(jì)查詢結(jié)果

val列中的兩個(gè)NULL值將被忽略。

  • 要計(jì)算demos表中的唯一行,可以將DISTINCT運(yùn)算符添加到COUNT函數(shù)中,如下查詢語句:

SELECT COUNT(DISTINCT val) FROM demos;

mysql如何統(tǒng)計(jì)查詢結(jié)果

在計(jì)數(shù)中忽略兩個(gè)重復(fù)值1、2和兩個(gè)NULL值。

“mysql如何統(tǒng)計(jì)查詢結(jié)果”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI