日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Explain执行器名词解释

發布時間:2023/12/18 编程问答 56 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Explain执行器名词解释 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Explain執行器名詞解釋

  • Explain作用及使用
  • Explain字段詳解
    • id
    • select_type
    • table
    • partitions
    • type
    • possible_keys
    • key
    • key_len
    • ref
    • rows
    • filtered
    • Extra

Explain作用及使用

  • 作用

    復雜sql語句的讀取順序 sql中有哪些索引可以使用 sql中哪些索引被實際使用 表之間的引用 每張表有多少行被優化器查詢
  • 使用方法

    EXPLAIN + 查詢sql 如:EXPLAIN SELECT * FROM test_index;
  • 基本字段解讀

idselect_typetablepartitionstypepossible_keyskeykey_lenrefrowsfilteredExtra
1SIMPLEtest_indexNULLindexNULLindex_abc3069NULL9100Using index
編號查詢類型匹配的分區類型可用索引實際使用索引實際索引長度表之間引用行數按表條件過濾的行百分比執行情況描述

Explain字段詳解

id

select查詢的序列號,并不是單純的從上到下或者從下向上執行,共有三種情況- id相同:按照從上到下的順序執行- id不同:按照id值由大到小的順序執行- id既有相同又有不同:先執行id值大的,然后相同值的從上到下執行

select_type

分別用來表示查詢的類型,主要是用于區別普通查詢、聯合查詢、子查詢等的復雜查詢。 值如下:- SIMPLE:簡單查詢,不包含子查詢和UNION查詢- PRIMARY:主查詢,如包含子查詢的sql中的父查詢- SUBQUERY:查詢sql中的子查詢- DERIVED:衍生查詢(在from列表中的子查詢,Mysql遞歸這些子查詢,結果放到臨時表中)- UNION:聯合查詢,t1 UNION t2 中的t2- UNION RESULT:從UNION表獲取結果的SELECT

table

一般指查詢的表,對于帶尖括號的,表示select_type + id的指向。

partitions

如果查詢是基于分區表的話,會顯示查詢將訪問的分區。

type

type所顯示的是查詢使用了哪種類型 查詢速度:null > syetem > const > eq_ref > ref > range > index > all- null:甚至不需要訪問索引表,例如主鍵作為條件超過當前表主鍵最大值;- system:const的特殊情況,只有一條數據的系統表- const:使用唯一索引等價查詢,僅能匹配到一條數據- eq_ref:使用唯一索引作為關聯條件,匹配多條不重復數據- ref:普通索引等價- range:檢索給定范圍的索引 , > 、< 、>= 、<=、between and- index:僅查詢索引表- all:遍歷全表以找到匹配的行

possible_keys

顯示可能應用在這張表中的索引,一個或多個。查詢涉及到的字段上若存在索引,則該索引將被列出,但不一定被查詢實際使用

key

查詢中實際使用到的索引,小于等于possible_keys

key_len

表示索引中使用的字節數,可通過該列計算查詢中使用的索引的長度,在不損失精確性的情況下,長度越短越好。 key_len顯示的值為索引字段的最大可能長度,并非實際使用長度,即key_len是根據表定義計算而得,不是通過表內檢索出的。

ref

表示查詢中的連接匹配條件,即哪些列或常量被用于查找索引列上的值

rows

根據表統計信息及索引選用情況,大致估算出找到所需的記錄所需要讀取的行數,也就是說,用的越少越好

filtered

按表條件過濾的行百分比

Extra

查詢結果的備注信息,很重要 Using index:性能提升,索引覆蓋,此查詢僅查詢索引不需要回表查詢 Using where:該查詢中使用了where條件過濾 Using index, Using where:雙條件,表明索引被用來執行索引鍵值的查找 Using filesort:性能消耗大,需要額外一次排序(查詢) Using temporary:性能消耗大,用到臨時表,常見于order by和group by Using join buffer 連接緩存 impossible where:where子句的值總是false,不能用來獲取任何元組 distinct:優化distinct操作,在找到第一匹配的元組后即停止找同樣值的動作

總結

以上是生活随笔為你收集整理的Explain执行器名词解释的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。