(1)explain之例子
?
?(2)索引單表優(yōu)化案例
?
?文章來源地址http://www.zghlxwxcb.cn/news/detail-689122.html
上面的功能已經實現,但是分析功能, 使用explain分析這條sql:
發(fā)現type為All Extra:有Using filesort (文件內排序) 這兩個是影響性能的
?
?查看下這張表:只有一個主鍵索引
?為這幾個字段建立一個符合索引:
?
建立完索引后,在使用explain進行分析一下:type變成了range,但是Extra還是留著Using filesort
因為comments>1,是一個范圍,范圍之后會導致索引失效,有范圍導致后面的索引用不上
還需要優(yōu)化
?
?刪除上面建立的索引:drop
?
?
?
重新建立索引:跳過comments字段
?
?查看索引
?
?此時再使用explain查看:
?
?
(3)索引兩表案例優(yōu)化案例
?
?
?
?
?
?
?
?
?
?
分析一下sql:type為all? ? rows為20+20?
?有連個表:先給一張表book表建立索引
此時在分析sql:下面book的type變?yōu)閞ef 性能得到了增強
?
?把索引加到class表:刪除索引
加索引:?
?
在次分析sql:class的type為index? ? 效果ref>index? 沒有ref好,可以看出左連接給右表建立索引性能高
?
?
左連接,給右表建立索引。右連接,給左表建立索引
(3)索引三表優(yōu)化案例
新建一個表?
?
刪除前面的建立索引:
?三表查詢:
?
?
?分析一下sql:type全是all,需要建立索引優(yōu)化
?
?跟據左右連接,分別建立索引(左建右,右建左)
?建立后分析一下sql:兩分type變?yōu)閍ll
?
?文章來源:http://www.zghlxwxcb.cn/news/detail-689122.html
?
到了這里,關于sql:SQL優(yōu)化知識點記錄(五)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!