乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      關(guān)于Explain

       怡紅公子0526 2022-04-05

      最近在對sql進(jìn)行性能優(yōu)化因此對explain相關(guān)的知識進(jìn)行一個(gè)簡單的整理歸納。

      EXPLAIN:

        為SELECT語句中使用到的每個(gè)表返回一條 SELECT 執(zhí)行的詳細(xì)信息;按照MySQL在處理語句時(shí)讀取它們的順序列出這些表。

      命令輸出格式

      id = 1    
      select_type = SIMPLE    
      table = clazz    
      partitions =     
      type = const    
      possible_keys = PRIMARY    
      key = PRIMARY    
      key_len = 98    
      ref = const    
      rows = 1    
      filtered = 100.00    
      Extra =     
      • id:SELECT 標(biāo)識符,SQL執(zhí)行的順序的標(biāo)識,SQL從大到小的執(zhí)行
        • id相同時(shí),執(zhí)行順序由上至下
        • 如果是子查詢,id的序號會遞增,id值越大優(yōu)先級越高,越先被執(zhí)行
        • 如果id相同,則認(rèn)為是一組,從上往下順序執(zhí)行;在所有組中,id值越大,優(yōu)先級越高,越先執(zhí)行
      • select_type
        • SIMPLE:簡單的SELECT未使用 UNION 查詢或子查詢
        • PRIMARY:表示此查詢是最外層的SELECT(如兩表做UNION或者存在子查詢的外層的表操作為PRIMARY,內(nèi)層的操作為UNION)
        • UNION:表示UNION操作中,查詢中處于內(nèi)層的SELECT(內(nèi)層的SELECT語句與外層的SELECT語句沒有依賴關(guān)系)
        • DEPENDENT UNION:表示UNION操作中,查詢中處于內(nèi)層的SELECT(內(nèi)層的SELECT語句與外層的SELECT語句有依賴關(guān)系)
        • UNION RESULT:UNION 操作的結(jié)果,id值通常為null
        • SUBQUERY:子查詢中的第一個(gè) SELECT
        • DEPENDENT SUBQUERY:子查詢中的第一個(gè) SELECT, 子查詢依賴于外層的查詢結(jié)果
        • ERIVED:被驅(qū)動的SELECT子查詢(子查詢位于from子句)
        • MATERIALZED:物化子查詢(對此查詢會創(chuàng)建臨時(shí)表,將制定表物化為臨時(shí)表)
        • UNCACHEABLE SUBQUERY:無法緩存子查詢的結(jié)果,每次都需要計(jì)算
        • UNCACHEABLE UNION:UNION操作紅內(nèi)層的子查詢無法被物化(類似于UNCACHABLESUBQUERY)
      • table:表示查詢涉及的表或衍生表
      • type
        • ALL:全表掃描,mysql將便利全表數(shù)據(jù)直至找到匹配的行
        • index:全索引掃描,遍歷索引樹
        • range:  范圍掃描,基于索引做掃描,如between,in,>=,like等操作
        • ref: 表示上述的連接匹配條件,即哪些列或產(chǎn)量被用于查找索引列上的值
        • eq_ref: 類似ref區(qū)別在于索引是唯一索引,對于每個(gè)索引鍵值表中只有一條記錄匹配,即多表連接中使用primary key或者unique key作為關(guān)聯(lián)條件
        • const: 只讀取一次就能獲得數(shù)據(jù)(如:主鍵)
        • system: const的特例,查詢的表中只有一行的情況下,使用system
        • null: mysql在優(yōu)化的過程中分解語句,執(zhí)行時(shí)甚至不用訪問表或索引,例如從一個(gè)索引列里面選取最小值可以通過單獨(dú)索引查找完成  
      • partitions:記錄與查詢匹配的分區(qū)
      • possible_keys:表示在查詢時(shí), 能夠使用到的索引具體使用了哪些索引, 由 key 字段決定.
      • key:表示查詢時(shí)所真正使用到的索引.
      • key_len:表示查詢優(yōu)化器使用了索引的字節(jié)數(shù). 這個(gè)字段可以評估組合索引是否完全被使用, 或只有最左部分字段被使用到
        • 字符串
          • char(n): n 字節(jié)長度
          • varchar(n): 如果是 utf8 編碼, 則是 3 n + 2字節(jié); 如果是 utf8mb4 編碼, 則是 4 n + 2 字節(jié)
        • 數(shù)值類型  
          • TINYINT: 1字節(jié)
          • SMALLINT: 2字節(jié)
          • MEDIUMINT: 3字節(jié)
          • INT: 4字節(jié)
          • BIGINT: 8字節(jié)
        • 時(shí)間類型 
          • DATE: 3字節(jié)
          • TIMESTAMP: 4字節(jié)
          • DATETIME: 8字節(jié)
        • 字段屬性: NULL 屬性 占用一個(gè)字節(jié). 如果一個(gè)字段是 NOT NULL 的, 則沒有此屬性.
      • ref:被用來標(biāo)識那些用來進(jìn)行索引比較的列或者常量
      • rows:估算 SQL 要查找到結(jié)果集需要掃描讀取的數(shù)據(jù)行數(shù)
      • filterd:給出了一個(gè)百分比的值,這個(gè)百分比值和 rows 列的值一起使用
      • Extra: 附加與操作相關(guān)聯(lián)的信息
        • Using filesort
          • 表示 MySQL 需額外的排序操作, 不能通過索引順序達(dá)到排序效果,查詢 CPU 資源消耗大建議優(yōu)化去掉,
        • Using index
          • "覆蓋索引掃描", 表示查詢在索引樹中就可查找所需數(shù)據(jù), 不用掃描表數(shù)據(jù)文件, 往往說明性能不錯(cuò)
        • Using where
          • where條件用于篩選出與下一個(gè)表匹配的數(shù)據(jù)然后返回給客戶端
        • Using temporary
          • 查詢有使用臨時(shí)表, 一般出現(xiàn)于排序, 分組和多表 join 的情況, 查詢效率不高 建議優(yōu)化.
        • Impossible where
          • WHERE條件過濾沒有效果,或者是始終選不出任何列(理解為最終是全表掃描)
        • Impossible HAVING
          • HAVING條件過濾沒有效果,或者是始終選不出任何列(理解為返回已有查詢的結(jié)果集)
        • unique row not found
          • 表中找不到滿足條件唯一索引或主鍵索引的列
        • Using sort_union(...),Using union(...),Using intersect(...)
          • 表示在index_merge的連接類型中索引合并是怎么樣完成的,及使用了怎樣特別的算法

        本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多