explain 之 type
生活随笔
收集整理的這篇文章主要介紹了
explain 之 type
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
type 顯示的是訪問類型,是較為重要的一個指標,可取值為:
| NULL | MySQL不訪問任何表,索引,直接返回結果 |
| system | 表只有一行記錄(等于系統表),這是const類型的特例,一般不會出現 |
| const | 表示通過索引一次就找到了,const 用于比較primary key 或者 unique 索引。因為只匹配一行數據,所以很快。如將主鍵置于where列表中,MySQL 就能將該查詢轉換為一個常亮。const于將 "主鍵" 或 "唯一" 索引的所有部分與常量值進行比較 |
| eq_ref | 類似ref,區別在于使用的是唯一索引,使用主鍵的關聯查詢,關聯查詢出的記錄只有一條。常見于主鍵或唯一索引掃描 |
| ref | 非唯一性索引掃描,返回匹配某個單獨值的所有行。本質上也是一種索引訪問,返回所有匹配某個單獨值的所有行(多個) |
| range | 只檢索給定返回的行,使用一個索引來選擇行。 where 之后出現 between , < , > , in 等操作。 |
| index | index 與 ALL的區別為 index 類型只是遍歷了索引樹, 通常比ALL 快, ALL 是遍歷數據文件。 |
| all | 將遍歷全表以找到匹配的行 |
結果值從最好到最壞以此是:
NULL > system > const > eq_ref > ref > fulltext > ref_or_null > index_merge > unique_subquery > index_subquery > range > index > ALLsystem > const > eq_ref > ref > range > index > ALL==一般來說, 我們需要保證查詢至少達到 range 級別, 最好達到ref 。==
總結
以上是生活随笔為你收集整理的explain 之 type的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: explain 之 id
- 下一篇: explain 之key rows ex