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優化)