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:可以适当的做数据冗余,来尽量避免做表连接查询。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值