mysql count提高方法總結(jié)
mysql想必很多程序猿都是不陌生的。很多人在糾結(jié)count的用法,怎么樣才能查詢效果最好。今天來(lái)談?wù)勑【幍囊恍┛捶?,僅供參考。
1、咱們先準(zhǔn)備建一個(gè)表,并準(zhǔn)備好測(cè)試數(shù)據(jù)方便后續(xù)步驟測(cè)試
以InnoDB引擎表為例
建表語(yǔ)句如下
CREATE TABLE test.test
(
a VARCHAR(50) NOT NULL COMMENT 'ddfdf',
b VARCHAR(15) NOT NULL COMMENT 'fds',
c VARCHAR(20) NOT NULL COMMENT 'asda',
d VARCHAR(8) NOT NULL COMMENT 'ads',
e longblob NOT NULL COMMENT 'asda',
f VARCHAR(2000) COMMENT 'ads',
g VARCHAR(8) NOT NULL COMMENT 'assd',
h DATE NOT NULL COMMENT 'adsad',
z VARCHAR(10) NOT NULL COMMENT 'adsd'
)
ENGINE=InnoDB DEFAULT CHARSET=utf8;

2、登陸到mysql并且換數(shù)據(jù)庫(kù)
執(zhí)行建表語(yǔ)句如下圖所示

3、然后是準(zhǔn)備測(cè)試數(shù)據(jù),簡(jiǎn)單查一下是否有數(shù)據(jù),如下圖所示

4、接下來(lái)開(kāi)始做測(cè)試
在沒(méi)有where條件的情況下
有人覺(jué)得count(*)比count(字段)要快,還有人覺(jué)得count(字段)比count(*)要快?
那到底那個(gè)快,咱們一試便知,請(qǐng)看下圖
根據(jù)圖中結(jié)果顯示,明顯count(字段)快一些

5、那在有where條件的情況呢?count(*)和count(字段)誰(shuí)更快?
請(qǐng)看下圖執(zhí)行效果
count(*)快一點(diǎn),可能是數(shù)據(jù)量太少看不出太明顯的效果

6、當(dāng)然可以通過(guò)查看執(zhí)行計(jì)劃進(jìn)行分析
在執(zhí)行的sql前面加上desc或者explain即可,如下圖所示

最后總結(jié)一下1.在沒(méi)有where條件下,建議count(字段)2.在有where條件的情況下,建議count(*)最后總結(jié)一下1.在沒(méi)有where條件下,建議count(字段)2.在有where條件的情況下,建議count(*)
相關(guān)文章
MySQL 8.0統(tǒng)計(jì)信息不準(zhǔn)確的原因
這篇文章主要介紹了MySQL 8.0統(tǒng)計(jì)信息不準(zhǔn)確的原因,幫助大家更好的理解和學(xué)習(xí)MySQL8.0的相關(guān)內(nèi)容,感興趣的朋友可以了解下2020-08-08
MySQL按常規(guī)排序、自定義排序和按中文拼音字母排序的方法
MySQL常規(guī)排序、自定義排序和按中文拼音字母排序,在實(shí)際的SQL編寫(xiě)時(shí),我們有時(shí)候需要對(duì)條件集合進(jìn)行排序。下面給出3種比較常用的排序方式,一起看看吧2017-04-04
MySQL數(shù)據(jù)庫(kù)主從復(fù)制原理及作用分析
這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)主從復(fù)制原理并分析了主從復(fù)制的作用和使用方法,有需要的的朋友可以借鑒參考下,希望可以有所幫助,感謝閱讀2021-09-09
使用存儲(chǔ)過(guò)程實(shí)現(xiàn)循環(huán)插入100條記錄
本節(jié)主要介紹了使用存儲(chǔ)過(guò)程實(shí)現(xiàn)循環(huán)插入100條記錄的具體實(shí)現(xiàn),需要的朋友可以參考下2014-07-07
MySQL必備的常見(jiàn)知識(shí)點(diǎn)匯總整理
這篇文章主要介紹了MySQL必備的常見(jiàn)知識(shí)點(diǎn),結(jié)合實(shí)例形式匯總整理了mysql各種常見(jiàn)知識(shí)點(diǎn),包括登錄、退出、創(chuàng)建、增刪改查、事務(wù)等知識(shí)點(diǎn)與操作注意事項(xiàng),需要的朋友可以參考下2020-05-05
MySQL 實(shí)現(xiàn)樹(shù)的遍歷詳解及簡(jiǎn)單實(shí)現(xiàn)示例
這篇文章主要介紹了MySQL 實(shí)現(xiàn)樹(shù)的遍歷詳解及簡(jiǎn)單實(shí)現(xiàn)示例的相關(guān)資料,這里提供了示例代碼及測(cè)試結(jié)果,需要的朋友可以參考下2017-01-01
MySQL如何快速的創(chuàng)建千萬(wàn)級(jí)測(cè)試數(shù)據(jù)
這篇文章主要給大家介紹了關(guān)于MySQL如何快速的創(chuàng)建千萬(wàn)級(jí)測(cè)試數(shù)據(jù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05
8種手動(dòng)和自動(dòng)備份MySQL數(shù)據(jù)庫(kù)的方法
作為流行的開(kāi)源數(shù)據(jù)庫(kù)管理系統(tǒng),MySQL的使用者眾多,為了維護(hù)數(shù)據(jù)安全性,數(shù)據(jù)備份是必不可少的。本文就為大家介紹幾種適用于企業(yè)的數(shù)據(jù)備份方法,需要的朋友可以參考下2018-10-10

