数据库索引失效的情况

1.对添加了索引的字段进行函数运算

2.如果是字符串类型的字段,如果不加单引号也会导致索引失效

3.如果最索引字段使用模糊查询,如果是头部模糊索引将失效,如果是尾部模糊索引则正常

4.如果使用or分割符,如果or前面的条件中的列有索引,后面的列没有索引,那么涉及到的索引都不会被用到
就比如有一个条件没有用到索引,那么必定会去全表查,这时再走索引反而影响性能

5,如果mysql评估使用索引比全表更慢,则不使用索引,但是我们一般忽略这个问题因为一个是不稳定,二是不同版本下的优化器执行也不一样

6.类型转换:如果索引列存在类型转换,那么也不会走索引,比如某列为字符串类型,而查询的时候设置了 int 类型的值就会导致索引失效;

7.非最左匹配:当使用联合索引时,未遵循最左匹配原则,则不能正常使用索引,也就是索引失效了;

相关推荐
gmaajt几秒前
Golang怎么读取环境变量_Golang如何用os.Getenv获取系统环境变量【基础】
jvm·数据库·python
2601_949194263 分钟前
Redis的安装教程(Windows+Linux)【超详细】
linux·数据库·redis
傻啦嘿哟7 分钟前
Python 文件批量处理:重命名/备份/同步运维实战指南
linux·数据库·github
m0_596406378 分钟前
CSS复杂组件如何拆解_使用Sass将组件逻辑细化为小文件
jvm·数据库·python
cyber_两只龙宝8 分钟前
【Oracle】 Oracle之SQL的子查询
linux·运维·数据库·sql·云原生·oracle
数智化管理手记25 分钟前
异常反复出现?精益生产生产异常闭环的三大常见问题场景
大数据·数据库·低代码·制造·精益工程
2301_8166602131 分钟前
golang如何实现SSRF防护策略_golang SSRF防护策略实现方案
jvm·数据库·python
流年如夢34 分钟前
自定义类型进阶:联合与枚举
java·c语言·开发语言·数据结构·数据库·c++·算法
解救女汉子35 分钟前
CSS3 按钮悬停时显示手型光标(cursor- pointer)的正确写法
jvm·数据库·python
csdn2015_41 分钟前
spring boot 启动的时候将数据库里的分类信息写入redis
数据库·spring boot·redis