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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

explain ref_数据库查询优化:使用explain分析sql语句执行效率

發布時間:2025/3/20 数据库 12 豆豆
生活随笔 收集整理的這篇文章主要介紹了 explain ref_数据库查询优化:使用explain分析sql语句执行效率 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

對于復雜、效率低的sql語句,我們通常是使用explain sql 來分析sql語句,這個語句可以打印出,語句的執行過程。這樣方便我們分析,進行優化。

首先,說一下,explain查詢出來的數據如何分析。

table :這一列是查詢設計的表。

type :很重要的一列,顯示了查詢使用了那種類型,是否使用的索引,能反映出語句的質量。一般這個指標從好到壞依次是:system>const>eq_ref>ref(最好能達到)>fulltext>ref_or_null>index_merge>unique_subquery>index_subquery>range>index>ALL

為了保證查詢至少達到range級別。最好達到ref,否則的話,只能說明這條語句性能有待提高。

ref 表示所有具有匹配的索引的行都被用到

range索引范圍內查找

index全索引樹掃描

all全表掃描

possible_keys:指出mysql在試用了哪個索引在該表中查找行。如果沒有使用任何索引,就顯示的NULL,可以用于對優化時的索引調整。

key:顯示使用的索引,如果沒有使用,則顯示NULL

key_len:顯示的是所使用的索引長度,如果沒使用,則是NULL。當然,在使用索引的情況下,索引長度越小。效果越明顯。

ref:顯示使用那個列或常數雨key一起從表中選擇行。

rows:執行查詢的行數,如果行數越小,說明查詢次數越少,效率越高。

extra:包含查詢mysql解決查詢的詳細信息。

在上面的查詢解釋表中,type為ALL所以,這個查詢是全表掃描,并沒有使用索引。所以,我們要分析這條語句中,哪個查詢條件,適合添加索引。這個要根據具體問題具體分析了。

接下來,我對role表中的priority_level添加索引,添加后執行結果如下:

查詢次數變少了。而且也用到了剛才加的pl_idx索引。查詢效率提高了。當然這只是優化了一小步。也只是初步認識了一下explain。還需要多加練習。

總結

以上是生活随笔為你收集整理的explain ref_数据库查询优化:使用explain分析sql语句执行效率的全部內容,希望文章能夠幫你解決所遇到的問題。

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