MySQL的Explain結果輸出項解釋
mysql> explain select * from aaa \G
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: aaa
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 1
Extra: NULL
1 row in set (0.01 sec)
部分輸出項解釋如下:
select_type: 表示select的型別(SIMPLE=>簡單表,不使用表連線或者子查詢,PRIMARY=>主查詢,外層的查詢,UNION=>UNION中的第二個或者後面的查詢語句,SUBQUERY=>子查詢中的第一個select)
table; 輸出結果集的表
possible_keys: 表示查詢時,可能使用的索引
key: 表示實際使用的索引
key_len: 索引欄位的長度
rows; 掃描的行的數量
Extra: 執行情況的說明和描述
type: 表示表的連線型別,效能有好到差的連結型別為:
system=>只有一行,也就是常量表,
const=>單表中最多有一個匹配行,例如primary key或者unique index,
eq_ref=>對於前面的每一行,在此表中只查詢一條記錄,簡單來說,就是多表連線中使用primary key或者unique index,
ref=>與eq_ref類似,區別在於不是使用primay key或者unique index而是使用普通的索引,
ref_or_null=>與ref類似,區別在於條件中包含對null的查詢,
index_merge=>索引合併最佳化,
unique_subquery=>in的後面是一個查詢主鍵欄位的子查詢,
index_subquery=>與unique_subquery類似,區別在於in的後面是查詢非唯一索引欄位的子查詢,
range=>單表中的查詢範圍,
index=>對於前面的每一行,都透過查詢索引來得到資料,
all=>對於前面的每一行,都透過全表掃描來得到資料
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: aaa
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 1
Extra: NULL
1 row in set (0.01 sec)
部分輸出項解釋如下:
select_type: 表示select的型別(SIMPLE=>簡單表,不使用表連線或者子查詢,PRIMARY=>主查詢,外層的查詢,UNION=>UNION中的第二個或者後面的查詢語句,SUBQUERY=>子查詢中的第一個select)
table; 輸出結果集的表
possible_keys: 表示查詢時,可能使用的索引
key: 表示實際使用的索引
key_len: 索引欄位的長度
rows; 掃描的行的數量
Extra: 執行情況的說明和描述
type: 表示表的連線型別,效能有好到差的連結型別為:
system=>只有一行,也就是常量表,
const=>單表中最多有一個匹配行,例如primary key或者unique index,
eq_ref=>對於前面的每一行,在此表中只查詢一條記錄,簡單來說,就是多表連線中使用primary key或者unique index,
ref=>與eq_ref類似,區別在於不是使用primay key或者unique index而是使用普通的索引,
ref_or_null=>與ref類似,區別在於條件中包含對null的查詢,
index_merge=>索引合併最佳化,
unique_subquery=>in的後面是一個查詢主鍵欄位的子查詢,
index_subquery=>與unique_subquery類似,區別在於in的後面是查詢非唯一索引欄位的子查詢,
range=>單表中的查詢範圍,
index=>對於前面的每一行,都透過查詢索引來得到資料,
all=>對於前面的每一行,都透過全表掃描來得到資料
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15498/viewspace-2132568/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL EXPLAIN結果集分析 - 附帶大量案例MySqlAI
- MySQL的Explain總結MySqlAI
- Mysql效能最佳化(三)--explain返回的結果說明MySqlAI
- 簡單的mysql儲存過程,輸出結果集MySql儲存過程
- show engine innodb status 輸出結果解讀
- MySQL explain執行計劃詳細解釋MySqlAI
- EXPLAIN結果含義(轉)AI
- 請解釋下如下js程式碼對陣列排序後的輸出結果[程式碼]JS陣列排序
- MySQL explain命令詳解MySqlAI
- MySQL explain結果Extra中"Using Index"與"Using where; Using index"區別MySqlAIIndex
- MySQL explain 和 profiling 詳解MySqlAI
- filebeat輸出結果到elasticsearch的多個索引Elasticsearch索引
- 請解釋下NaN === NaN的結果NaN
- MySQL explain 中 key_len的詳解MySqlAI
- MySQL explainMySqlAI
- [Mysql]ExplainMySqlAI
- mysql 5.7配置項最詳細的解釋MySql
- MySQL查詢結果匯出方式總結MySql
- MySQL 中的 EXPLAIN 命令MySqlAI
- 蘋果釋出iOS 14.4正式版,官方釋出升級注意事項蘋果iOS
- ps aux查詢結果解釋UX
- mysql explain 執行計劃詳解MySqlAI
- [MySQL 優化] Explain 之 type 詳解MySql優化AI
- MySQL Explain執行計劃 - 詳解MySqlAI
- MySQL 索引 +explainMySql索引AI
- VNPY 批量策略回測和統計結果的excel輸出Excel
- 重磅!鐳速傳輸Raysync釋出11項全新功能
- python 實現計算器功能 輸入字串,輸出相應結果Python字串
- 蘋果春季釋出會:或將釋出一項付費遊戲訂閱服務蘋果遊戲
- 請寫出如下程式碼執行的結果並解釋為什麼?[程式碼]
- mysql 中的explain關鍵字MySqlAI
- mysql效能分析之explain的用法MySqlAI
- MySQL 的 EXPLAIN 語句及用法MySqlAI
- MySQL中explain語句的使用MySqlAI
- laravel列印輸出完整sql,執行時間和explain分析LaravelSQLAI
- mysql group by 取想要的結果MySql
- MySQL學習之explainMySqlAI
- 舉例解釋一下explain各欄位的含義AI
- 慢動作輸出 Linux 命令結果並用彩色顯示Linux