不同的SQL語(yǔ)句寫(xiě)法,往往會(huì)帶來(lái)很大的性能差異,我們?cè)趺床拍苤缊?zhí)行SQL查詢開(kāi)銷(xiāo)呢?MySQL為我們提供了EXPLAIN關(guān)鍵詞,在你的select語(yǔ)句前加上EXPLAIN關(guān)鍵詞,MySQL將解釋它是如何處理的SELECT查詢,提供有關(guān)表如何聯(lián)接和聯(lián)接的次序,所掃描的記錄數(shù)等相關(guān)信息,你可以憑借這些信息,來(lái)優(yōu)化你的SQL查詢。
EXPLAIN select id, username from userinfo where username like '%peng%';
我們?cè)诓樵冋Z(yǔ)句前加上了EXPLAIN關(guān)鍵詞,那么我們可以得到如下的報(bào)告。
id: 1
select_type: SIMPLE
table: userinfo
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
rel: NULL
rows: 6
Extra: Using where
大概解釋下每一個(gè)數(shù)據(jù)項(xiàng)的含義:
id: SELECT識(shí)別符,SELECT的查詢序列號(hào);
select_type: SELECT類型,可以是SIMPLE(簡(jiǎn)單查詢)、PRIMARY(最外面的select)等;
table:用到的表
type: 聯(lián)接類型
possible_keys: 可用索引列
key: 實(shí)際用到的索引列
key_len: 鍵長(zhǎng)度
rel: 使用哪個(gè)列或常數(shù)與key一起從表中選擇行
rows: 檢查的行數(shù)
Extra: 該列包含MySQL解決查詢的詳細(xì)信息
更具體的解釋請(qǐng)查閱MySQL手冊(cè),在這里,把手冊(cè)的內(nèi)容再抄一遍并沒(méi)有什么意義,當(dāng)你有了這些參考數(shù)據(jù)后,就能更準(zhǔn)確的完成MySQL查詢優(yōu)化了。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
