MySQL優化之COUNT 效率

2022-08-23 06:03:08 字數 537 閱讀 1107

count(*)與count(col)

網上搜尋了下,發現各種說法都有:

比如認為count(col)比count(*)快的;

認為count(*)比count(col)快的;

還有朋友很搞笑的說到這個其實是看人品的。

不加where限制條件的情況下,count(*)與count(col)基本可以認為是等價的;

但是在有where限制條件的情況下,count(*)會比count(col)快非常多;(待測)

命中最多的範圍:0.011ms~0.014ms

count(*)通常是對主鍵進行索引掃瞄,而count(col)就不一定了,另外前者是統計表中的所有符合的紀錄總數,而後者是計算表中所有符合的col的紀錄數。還有有區別的。

如果表沒有主鍵,那麼count(1)比count(*)快。

如果有主鍵,那麼count(主鍵,聯合主鍵)比count(*)快。

如果表只有乙個字段,count(*)最快。

MySQL優化之COUNT 效率

說到mysql的count 的效率,發現越說越說不清楚,乾脆寫下來,分享給大家。count 與count col 網上搜尋了下,發現各種說法都有 比如認為count col 比count 快的 認為count 比count col 快的 還有朋友很搞笑的說到這個其實是看人品的。在不加where限制條...

MySQL查詢優化之COUNT

count 聚合函式,以及如何優化使用了該函式的查詢,很可能是mysql中最容易被誤解的前10個話題之一,在網上隨便搜尋一下就能看到很多錯誤的理解,可能比我們想象的多得多。在做優化之前,先來看看count 函式的真正作用是什麼。count 的作用 count 的另外乙個作用是統計結果集的行數。當my...

MySQL優化 1億條資料效率COUNT

最近發現了乙個mysql快速匯入資料方法load data infile,具體參考這個文章。下面用幾條命令來給大家看看,效率結果。簡單說下 1.txt 開始只有10萬資料,後來用vim 新增到了2000萬行,用windows下的編輯器直接卡機的,windows下安裝gvim可以的。資料表型別inno...