mysql explain

1、type  html

  聯接類型(檢索方式),分爲:mysql

  a. constsql

    常數級別,使用了主鍵或者惟一索引,只須要讀取一次優化

      b. eq_refui

          使用了主鍵或者惟一索引,通常是多表關聯下會顯示這個類型.net

       c. ref  htm

          使用了通常索引(主鍵、惟一索引以外的),通常是多表關聯下會顯示這個類型blog

       d. ref_or_null排序

          使用了通常索引(主鍵、惟一索引以外的),通常是多表關聯下會顯示這個類型,而且專門添加了包含null值的搜索索引

       e. index_merge

           使用了索引合併,可能會涉及多個索引,key表示索引列表

        f. unique_subquery

           子查詢中使用了非惟一索引

        g. index_subquery

           子查詢中使用了惟一索引

        h. range

           範圍查找

         i. index

           會掃描索引文件,而all 是掃描數據文件

          j. all

          表掃描,掃描數據文件

2、select_type

      sql語句的類型

     a. simple

   最簡單的查詢類型,沒有用到子查詢(subquery)或者並集(union)

     b. primary

        在子查詢語句最外面的或者union語句最前面的select 語句

     c. union 

        在union後面或者在union中第二個select語句

     d. derived

         派生表,主select語句中from後面的 select 語句 

     e. union result

         並集後的結果  

      f. dependent union 

   首先符合union的要求,其次他對主select語句是有依賴的,mysql的查詢優化器會將in語句優化成exist語句,變成一個關聯查詢

      g. subquery

         子查詢第一個select

       h. dependent subquery

         首先是subquery類型,其次子查詢對主select有依賴

3、extra 

  sql查詢過程當中的詳細信息

  a. using filesort

   是指在mysql進行了一次額外的排序,而不是經過磁盤文件排序

   通常order by 沒有建索引,或者沒有建覆蓋索引 等問題會引起filesort

  b. using temporary 

   

 

 

2、其餘

      a. possible keys 和 keys

       可能用到的索引和實際用到的索引

      b. key_len

       索引長度

       c. ref

       索引使用的數據,若是是等號,則是等號右邊的數據

      d. rows

       mysql認爲執行sql必須檢查的行數 

 

 

參考: http://www.cnblogs.com/zhanjindong/p/3439042.html#select_type  (MySQL優化—工欲善其事,必先利其器之EXPLAIN)

     http://blog.csdn.net/hguisu/article/details/7161981 (MySQL Order By實現原理分析和Filesort優化)

相關文章
相關標籤/搜索