程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 查詢優化之EXPLAIN的使用分析

查詢優化之EXPLAIN的使用分析

編輯:關於MYSQL數據庫

不同的SQL語句寫法,往往會帶來很大的性能差異,我們怎麼才能知道執行SQL查詢開銷呢?MySQL為我們提供了EXPLAIN關鍵詞,在你的select語句前加上EXPLAIN關鍵詞,MySQL將解釋它是如何處理的SELECT查詢,提供有關表如何聯接和聯接的次序,所掃描的記錄數等相關信息,你可以憑借這些信息,來優化你的SQL查詢。
EXPLAIN select id, username from userinfo where username like '%peng%';
我們在查詢語句前加上了EXPLAIN關鍵詞,那麼我們可以得到如下的報告。
復制代碼 代碼如下:
id: 1
select_type: SIMPLE
table: userinfo
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
rel: NULL
rows: 6
Extra: Using where

大概解釋下每一個數據項的含義:
id:
SELECT識別符,SELECT的查詢序列號;
select_type: SELECT類型,可以是SIMPLE(簡單查詢)、PRIMARY(最外面的select)等;
table:用到的表
type: 聯接類型
possible_keys: 可用索引列
key: 實際用到的索引列
key_len: 鍵長度
rel: 使用哪個列或常數與key一起從表中選擇行
rows: 檢查的行數
Extra: 該列包含MySQL解決查詢的詳細信息

更具體的解釋請查閱MySQL手冊,在這裡,把手冊的內容再抄一遍並沒有什麼意義,當你有了這些參考數據後,就能更准確的完成MySQL查詢優化了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved