Mysql索引的一些注意事项sql分析

1. 建表

在这里插入图片描述

2。 几组sql的explain分析:

order by排序 group by分组
在c1,c2,c3,c4建立符合索引。

如下图:查询顺序1243,4321都可以使用到索引,因为mysql优化器,会优化我们的sql,会对sql进行重新排序
在这里插入图片描述

如下图:使用到了3个索引,范围后全失效
在这里插入图片描述

如下图:还是使用到了4个索引
在这里插入图片描述

order by

如下图:用到了2个索引,虽然c3没有查询,但是用到了排序上
在这里插入图片描述

如下图:只是用到了2个索引,出现了filesort,c4排序未使用到索引,缺了c3
在这里插入图片描述

如下图:只用了c1一个索引,c2,c3用于排序,无filesort
在这里插入图片描述

如下图:只用了c1一个索引,出现了filesort,因为order by顺序跟我们建立的索引顺序不一致
在这里插入图片描述

如下图:两个是一样的,使用到了c1,c2索引,c2,c3进行排序,无filesort
在这里插入图片描述

如下图:虽然oder by c3,c2, 违反了建立索引顺序,但是第一个sql有常量c2,不出现filesort。
在这里插入图片描述

group by

如下如:group by 也要与索引顺序相关
在这里插入图片描述

总结:

在这里插入图片描述

建议:

在这里插入图片描述

题目练习:

注意:
a=3 and b>4 and c=5 只使用到了a和b索引
a=3 and b like ‘kk%’ and c=5 使用到了a,b,c三个索引

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

优化口诀

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值