Mysql的explain語句

一茬祷、id:

代表select語句的編號清焕,如果是連接查詢,表之間是平等關(guān)系祭犯,select 編號都是從1開始秸妥,如果某select中有子查詢,則編號遞增沃粗;

二粥惧、select_type(查詢類型):


select_type

三、table(查詢針對的表):

1.實際的表名:select * from t1;

2.表的別名:select * from t2 as tmp;

3.derived:from型子查詢時

4.null:直接計算得結(jié)果,不用走表

四最盅、possible_key(可能用到的索引):

注意:系統(tǒng)估計可能用的幾個索引突雪,但最終只能用1個;

五涡贱、key(最終用的索引)

六咏删、key_len(使用的索引的最大字節(jié)數(shù))

注:不同的字符編碼有不同的計算方式,如1個utf8字符等于3個字節(jié)盼产;如果字段類型是null饵婆,那單個字段的索引字節(jié)數(shù)需要 +1,如果字段類型為非定長類型戏售,比如varchar,那字節(jié)數(shù)需要再 +2

七侨核、type(查詢的方式):

各個值代表查詢的效率比較:all < index < range < ref < eq_ref < const,system,null

注:這個列非常重要,是分析“查詢過程”的重要依據(jù)灌灾;

1.all:從表的第1行往后搓译,逐行做全表掃描,沒有使用索引

例:explain select name from table where name='xxx' \G

2.index:掃描所有索引節(jié)點锋喜,相當于index_all些己,有幾種情況會出現(xiàn)index:

(1).索引覆蓋的查詢情況下,能利用上索引嘿般,但是又必須全索引掃描

例:explain select id from table where id=1 or id+1>20\G

(2).利用索引來進行排序段标,但取出所有的節(jié)點

例:explain select id from table order by id asc \G

注:沒有加where條件,就得取所有索引節(jié)點炉奴,同時又沒有回行逼庞,只取索引節(jié)點,再排序瞻赶,經(jīng)過所有索引節(jié)點

3.range:查詢時赛糟,能根據(jù)索引做出一個范圍的掃描

例:explain select id,name from table where id>25 \G

4.ref:通過索引列派任,可以直接引用到某些數(shù)據(jù)行

例:explain select id,name from table where id=10 \G

5.eq_ref:通過索引列直接引用某一行數(shù)據(jù)(常見于連接查詢中)

例:explain select goods_id,shop_price from goods innert join ecs_catego ry using(cat_id) where goods_id> 25 \G

6.const,system,null:這3個分別指查詢優(yōu)化到常量級別,幾乎不需要查找時間

例1:explain select id,name from table wher eid=10 \G

例2:explain select 1+2 \G

注:一般按照主鍵來查詢時璧南,易出現(xiàn)const,system 掌逛,而直接查詢某個表達式或者不經(jīng)過表時,會出現(xiàn)NULL

7.index_merge:MySQL 5.0 和之后的版本推出了一個新特性---索引合并優(yōu)化(Index merge optimization)司倚,它讓MySQL可以在查詢中對一個表使用多個索引,對它們同時掃描豆混,并且合并結(jié)果。

例1:explain select * from table where id = 1 or uid = 10 \G

例2:explainselect*fromtablewhere (id= 1 or id = 2) oruid= 3 \G

八动知、ref(連接查詢表之間的字段引用關(guān)系):

例:explain select goods_id,cat_name,goods_name from ?goods inner join ec_category using(cat_id) where ecs_category.cat_name='' \G

九崖叫、rows(估計掃描總行數(shù))

十、extra(額外參數(shù)):

1.index:是指用到了索引覆蓋拍柒,效率非常高

2.using where:是指光靠索引定位不了心傀,還得where判斷

3.using temporary:是指用上了臨時表,group by 與order by 不同列時拆讯,或者group by ,order by 別的表的列

4.using filesort:文件排序(文件可能在磁盤,也可能在內(nèi)存)

例:select sum(shop_price) from ?goods group by cat_id;

注:這句sql用到了臨時表和文件排序

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末脂男,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子种呐,更是在濱河造成了極大的恐慌宰翅,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件爽室,死亡現(xiàn)場離奇詭異汁讼,居然都是意外死亡,警方通過查閱死者的電腦和手機阔墩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進店門嘿架,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人啸箫,你說我怎么就攤上這事耸彪。” “怎么了忘苛?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵蝉娜,是天一觀的道長。 經(jīng)常有香客問我扎唾,道長召川,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任胸遇,我火速辦了婚禮荧呐,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己坛增,他們只是感情好,可當我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布薄腻。 她就那樣靜靜地躺著收捣,像睡著了一般。 火紅的嫁衣襯著肌膚如雪庵楷。 梳的紋絲不亂的頭發(fā)上罢艾,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天,我揣著相機與錄音尽纽,去河邊找鬼咐蚯。 笑死,一個胖子當著我的面吹牛弄贿,可吹牛的內(nèi)容都是我干的春锋。 我是一名探鬼主播,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼差凹,長吁一口氣:“原來是場噩夢啊……” “哼期奔!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起危尿,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤呐萌,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后谊娇,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體肺孤,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年济欢,在試婚紗的時候發(fā)現(xiàn)自己被綠了赠堵。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡法褥,死狀恐怖顾腊,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情挖胃,我是刑警寧澤杂靶,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站酱鸭,受9級特大地震影響吗垮,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜凹髓,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一烁登、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦饵沧、人聲如沸锨络。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽羡儿。三九已至,卻和暖如春是钥,著一層夾襖步出監(jiān)牢的瞬間掠归,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工悄泥, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留虏冻,地道東北人。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓弹囚,卻偏偏與公主長得像厨相,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子鸥鹉,可洞房花燭夜當晚...
    茶點故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 第1章 初涉MySQL 1.1 MySQL文件 (1)MySQL目錄結(jié)構(gòu) (2)MySQL配置向?qū)募ò惭b后配置...
    凜0_0閱讀 779評論 1 0
  • 什么是SQL數(shù)據(jù)庫: SQL是Structured Query Language(結(jié)構(gòu)化查詢語言)的縮寫领铐。SQL是...
    西貝巴巴閱讀 1,801評論 0 10
  • 正確認識數(shù)據(jù)庫 MySQL是一個小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB公司宋舷。 在2008年1月16...
    小白文_Vincent閱讀 589評論 0 0
  • 1.建立原型 打開Axure新建文件绪撵,保存文件,在元件庫里面拖拽一個【矩形】到面板祝蝠,可以Ctrl+C復制或者從元件...
    向陽光飛閱讀 907評論 0 1
  • 今年最大的感受是生活充滿了變數(shù)。本來約好跟閨蜜市中心吃早餐儡嘶,卻因公事取消喇聊,幸好有星巴克,“美式加脫脂冷牛奶和健康糖...
    helenzhang246閱讀 192評論 1 1