程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL explain 分析查詢,mysqlexplain

MySQL explain 分析查詢,mysqlexplain

編輯:MySQL綜合教程

MySQL explain 分析查詢,mysqlexplain


簡述:

使用 EXPLAIN 或DESC關鍵字可以模擬優化器執行SQL查詢語句,從而知道MySQL是如何處理你的SQL語句的。這可以幫你分析你的 查詢語句 或是 表結構的性能 瓶頸。

通過explain命令可以得到:

1、表的讀取順序

2、表的讀取操作的操作類型

3、哪些索引可以使用

4、哪些索引被實際使用

5、表之間的引用

6、每張表有多少行被優化器查詢

為什麼要使用explain :

explain可以幫助我們分析 select 語句,讓我們知道查詢效率低下的原因,從而改進我們查詢,讓查詢優化器能夠更好的工作。

MySQL查詢優化器是如何工作的 :

MySQL查詢優化器有幾個目標,但是其中最主要的目標是盡可能地使用索引,並且使用最嚴格的索引來消除盡可能多的數據行。

最終目標是提交SELECT語句查找數據行,而不是排除數據行。

優化器試圖排除數據行的原因在於它排除數據行的速度越快,那麼找到與條件匹配的數據行也就越快。

如果能夠首先進行最嚴格的測試,查詢就可以執行地更快。

explain局限 :

1、explain不會告訴你關於觸發器,存儲過程的信息或者用戶自定義的函數對查詢的影響情況。

2、explain不會考慮cache。

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