查看: 2466|回復: 0

[Mysql數據庫] Mysql查詢優化-Mysql索引

3萬

主題

3萬

帖子

10萬

積分

管理員

Rank: 9Rank: 9Rank: 9

積分
100197
發表于 2015-12-2 18:44:47

Mysql查詢優化-Mysql索引,有需要的朋友可以參考下。


1.使用聯合索引,而不是單個索引,當在where條件里a和b字段更多時候是聯合出現時,就有必要這樣做,如idx_a_b(a,b),而不是idx_a(a),idx_b(b)。sql中的order by、group by、min、max的排序相關以及distinct也會因為有索引的存在而有性能上的提升(所以經常被order by、group by、min、max的字段當然也要考慮加索引)。 2.聯合索引中,索引字段的順序根據字段的區分度排,區分度大的放在前面,如idx_smp(name,gender) 3.合理創建聯合索引,例如,用idx_a_b_c(a,b,c)來覆蓋idx_a_b(a,b),idx_(b),但是不能覆蓋idx_c(c)。 4.where字段時,盡量不要在字段上直接加函數,這樣是不會走索引的,會減慢執行速度。 ps:可以適當的做數據冗余,來盡量避免做表連接查詢。


回復

使用道具 舉報