mysql count提高方法總結(jié)
mysql想必很多程序猿都是不陌生的。很多人在糾結(jié)count的用法,怎么樣才能查詢效果最好。今天來談?wù)勑【幍囊恍┛捶?,僅供參考。
1、咱們先準(zhǔn)備建一個(gè)表,并準(zhǔn)備好測試數(shù)據(jù)方便后續(xù)步驟測試
以InnoDB引擎表為例
建表語句如下
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ù)庫
執(zhí)行建表語句如下圖所示

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

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

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

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

最后總結(jié)一下1.在沒有where條件下,建議count(字段)2.在有where條件的情況下,建議count(*)最后總結(jié)一下1.在沒有where條件下,建議count(字段)2.在有where條件的情況下,建議count(*)
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
關(guān)注官方微信