服務端指南 數據存儲篇 | MySQL(05) 索引的排序優化方案

原文地址:服務端指南 數據存儲篇 | MySQL(05) 索引的排序優化方案
博客地址:blog.720ui.com/javascript

MySQL能夠利用索引來快速地執行 ORDER BY 和 GROUP BY 語句的排序和分組操做。所以,在數據庫設計時,設計索引應該儘量地同時知足查詢和排序,使用同一個索引既用於查詢,又用於排序。java

ORDER BY 的索引優化

對於只存在 ORDER BY 的 SQL 語句,能夠在 ORDER BY 的字段上建立索引。mysql

舉個例子,能夠在 prior 上建立 news_prior_idx(prior) 索引,就能夠實現利用索引進行 ORDER BY 優化。sql

select * from news order by prior複製代碼

WHERE 與 ORDER BY 的索引優化

對於同時存在 WHERE 和 ORDER BY 的 SQL 語句,能夠創建一個複合索引進行性能優化。數據庫

舉個例子,能夠建立 news_year_idx(year, prior) 索引,就能夠實現利用索引進行 ORDER BY 優化。性能優化

select * from news where news_year = 2017 order by prior複製代碼

(完)微信

更多精彩文章,盡在「服務端思惟」微信公衆號!
數據庫設計

相關文章
相關標籤/搜索