mysql in不走索引可能的情况

在MySQL 5.7.3以及之前的版本中,eq_range_index_dive_limit的默认值为10,之
后的版本默认值为200。所以如果大家采用的是5.7.3以及之前的版本的话,很容易采用索引统计数据而
不是index dive的方式来计算查询成本。当你的查询中使用到了IN查询,但是却实际没有用到索引,就
应该考虑一下是不是由于 eq_range_index_dive_limit 值太小导致的。

意思是如果你的in里面参数超过了这个限制值,就不会走索引查询。

参考: <<MySQL是怎样运行的:从根儿上理解>> 12.2.3 基于索引统计数据的成本计算

posted on   biwentao  阅读(1897)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
历史上的今天:
2020-03-25 docker 容器镜像加速配置
2020-03-25 ubuntu docker 解决sudo权限问题
2020-03-25 ubuntu 虚拟机安装完docker 以后 出现tls时遇到的坑
2019-03-25 利用Django做一个简单的分页页面

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示