mysql 如何查看sql查詢是否用到索引


使用解釋函數explain,只需添加在sql語句之前即可:

表中的索引:

 

查看sql是否用到索引:

我們只需要注意一個最重要的type 的信息很明顯的提現是否用到索引:

type結果值從好到壞依次是:

system > const > eq_ref > ref > fulltext > ref_or_null > index_merge > unique_subquery > index_subquery > range > index > ALL

一般來說,得保證查詢至少達到range級別,最好能達到ref,否則就可能會出現性能問題。

possible_keys:sql所用到的索引

key:顯示MySQL實際決定使用的鍵(索引)。如果沒有選擇索引,鍵是NULL

rows: 顯示MySQL認為它執行查詢時必須檢查的行數。

 

注意: 如遇到字段太長,添加不了索引,而又不能減小字段長度,則可以需要指定索引長度。

如:

CREATE  INDEX  索引名稱  ON  表名  (字段名(size)) ;

CREATE  INDEX   IDX_ELEMENT_XXX  ON  table_element (xxx_id(200)) ;

給table_element表中的xxx_id字段添加指定200長度的索引IDX_ELEMENT_XXX


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM