MySQL小白必備 詳解explain

2021-08-20 01:31:54 字數 1066 閱讀 9228

使用乙個explain語句來分析sql的執行計畫結果顯示如下

id不用解釋了,編號;

select_type查詢型別,******最好,詳解可以看select_type詳解

table說明這個查詢是關於哪張表的

type重要!!顯示此語句用了何種型別,最好到最差分別為:

①const(常數查詢,用到了主鍵和唯一索引)

②eq_reg(範圍查詢,唯一索引,between and)

③ref(連線join查詢)

④range(基於索引的範圍查詢)

⑤index(索引的掃瞄查詢)

⑥all(全表掃瞄)

possible_key顯示可能應用在這張表中的索引,如果為空,則沒有可能的索引

key這個語句實際使用的索引,如果為null,則沒有使用索引

key_len實際使用的索引長度,越短越好(在不損失精確性前提下)

ref顯示索引的那一列被使用了,如果可能的話,是乙個常數

rowsmysql 認為必須檢查的用來返回請求資料的行數

extra的資訊

using filesort看到這個時候,查詢就要優化了,說明mysql用了檔案排序的方式來進行優化,在orderby中比較常見。mysql需要進行額外的步驟來發現如何對返回的行進行排序。他根據鏈結型別以及儲存排序鍵值和匹配條件的全部行指標來排序全部行

using temporary使用了臨時表來查詢,看到這個也要優化,這裡說明mysql需要建立乙個臨時表來儲存結果,這通常發生在對不同的列進行order by 上。

MySQL索引小白必備入門篇

2.幾個常見的索引名詞 聚簇索引 innodb,資料檔案和索引檔案放在同一檔案中,因此要指定乙個key值 此處key值不是主鍵,而是索引 關於key值翻譯過來是主鍵的爭議 其實key值翻譯成主鍵是不太對的,因為我們建表時不一定有主鍵,這時innodb會從其他列中選擇乙個唯一鍵來建立聚簇索引,如果連唯...

JS小白入門必備

初學者看過來了,今天我們講講js最簡單的東西。js的引入方式 行內式 寫在標籤內部的js 用得少 外鏈式 使用script標籤的src屬性來引入外部的js檔案 內聯式 寫在script標籤裡面的js 這個和css的引入方式一樣,就不多說了。基本的五句話 在頁面彈出乙個提示框 alert hello ...

小白必備物件導向練習

68 python 中如何定義乙個自己的 class python 使用關鍵字 class 定製自己的類,self 表示類例項物件本身。乙個自定義類內包括屬性 方法,其中有些方法是自帶的。類 物件 class dog object pass以上定義乙個 dog 物件,它繼承於根類 object,pa...