国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

MySQL InnoDB引擎的count處理及count(*)和count(1)區(qū)別

aikin / 452人閱讀

摘要:不討論引擎,在和引擎下的區(qū)別是基礎(chǔ)的區(qū)別。如果索引記錄不完全在緩沖池中,則處理選擇語句需要一些時間。引擎以同樣的方式處理和,兩者沒有性能差異。

不討論 MyISAM 引擎,countMyISAMInnoDB 引擎下的區(qū)別是基礎(chǔ)的區(qū)別。

文檔地址:https://dev.mysql.com/doc/ref...

翻譯:
InnoDB 引擎并不在一個表中保存行內(nèi)計數(shù),因?yàn)椴l(fā)事務(wù)會在相同時間看到不同的行數(shù)。因此, SELECT COUNT(*) 語句只計算當(dāng)前事務(wù)可見的行數(shù)。

MySQL 5.7.18 版本之前, InnoDB 引擎通過掃描聚簇索引來處理 SELECT COUNT(*) 語句,在 MySQL 5.7.18 版本中,如果存在一個更小的二級索引, InnoDB 會橫向讀取這個來執(zhí)行 SELECT COUNT(*) 語句。

如果索引記錄不完全在緩沖池中,則處理選擇 SELECT(*) 語句需要一些時間。為了更快的計數(shù),您可以創(chuàng)建一個計數(shù)器表,并讓您的應(yīng)用程序按插入和刪除操作更新它。然而,這種方法在同一計數(shù)器表中啟動成千上萬個并發(fā)事務(wù)的情況下,可能無法很好地擴(kuò)展。如果近似行計數(shù)足夠,則可以使用 SHOW TABLE STATUS 語句。
InnoDB 引擎以同樣的方式處理 SELECT COUNT(*)COUNT(1),兩者沒有性能差異。

翻譯自官方文檔,肯定權(quán)威

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/22854.html

相關(guān)文章

發(fā)表評論

0條評論

aikin

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<