MySQL的執行計劃是指MySQL在執行查詢語句時,對所選用的查詢算法及關聯表的訪問方式做了一個預估分析得出的結果。
MySQL執行計劃主要有以下幾種:
1. SELECT_TYPE SELECT_TYPE表示查詢的類型,如SIMPLE、PRIMARY、SUBQUERY、DERIVED等。用于標識查詢的復雜度和優化難度。SELECT_TYPE的性能排序如下: SIMPLE >PRIMARY >SUBQUERY >DERIVED 2. TABLE TABLE表示表的訪問方式,如FULL、REF、CONST、SYSTEM等。用于標識MySQL取數據的方式和位置。TABLE的性能排序如下: CONST >SYSTEM >NULL >RANGE >INDEX >ALL 3. TYPE TYPE表示MySQL選用的Join類型,如ALL、index、range、ref、eq_ref、const、system。用于標識Join的類型和驅動表。TYPE的性能排序如下: system >const >eq_ref >ref >range >index >ALL 4. POSSIBLE_KEYS POSSIBLE_KEYS表示MySQL可以選用的索引鍵,如索引字段名、主鍵、唯一鍵等。用于標識MySQL選用的索引。POSSIBLE_KEYS的性能排序如下: NULL >PRIMARY >index_name 5. KEY KEY表示MySQL具體選用的索引。它是MySQL從POSSIBLE_KEYS中選出來的索引,并不一定是最優索引。KEY的性能排序同POSSIBLE_KEYS。 6. ROWS ROWS表示MySQL掃描的行數,越小越好。ROWS的性能排序同POSSIBLE_KEYS。 7. EXTRA EXTRA表示MySQL在執行查詢時的額外信息,如臨時表的使用、排序操作等。用于標識MySQL特殊使用方法。EXTRA的性能排序如下: NULL >Using index >Using where >Using filesort >Using temporary
以上是MySQL的執行計劃,可以通過命令DESCRIBE或EXPLAIN來查看該查詢語句的具體執行計劃。
下一篇css .before