哪些情况下索引会失效?
索引并不是时时都会生效的,比如以下几种情况,将导致索引失效:
1.如果条件中有or,即使其中有条件带索引也不会使用(这也是为什么尽量少用or的原因)
注意:要想使用or,又想让索引生效,只能将or条件中的每个列都加上索引。
2.对于多列索引,不是使用的第一部分,则不会使用索引。
3.like查询是以%开头。
4.如果列类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不使用索引。
5.如果 mysql 估计使用全表扫描要比使用索引快,则不使用索引。
此外,查看索引的使用情况
show status like 'Handler_read%';
大家可以注意:
handler_read_key:这个值越高越好,越高表示使用索引查询到的次数。
handler_read_rnd_next:这个值越高,说明查询越低效。
您可能感兴趣的文章
- 合理使用MySQL数据库索引以使数据库高效运行
- 肩,背部肌群锻炼-俯立划船-俯卧挺身-站姿负重俯身弯起-坐姿颈后下拉-俯立正握上拉-颈前宽握引体向上
- 由于其配置信息(注册表中的)不完整或已损坏,Windows 无法启动这个硬件设备。 (代码 19)解决办法
- php用header()实现文件下载,下载的文件提示被破坏不能打开的解决办法
- Jquery等待ajax执行完毕再继续执行下面代码的效果
- APACHE同一IP配置多个域名,Apache下同一个IP配置多个虚拟主机
- php清空(删除)指定目录下的文件,不删除目录文件夹的方法
- 桌面右下角的战争—弹窗大战!很有才!超搞笑!
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。