数据库索引失效的情况

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

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

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

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

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

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

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

相关推荐
appearappear13 小时前
优雅实现・高并发下大量数据乐观锁批量更新(MySQL 最优实践)
数据库·mysql
TG_yunshuguoji13 小时前
腾讯云代理商:腾讯云CloudBase数据库操作全解析
数据库·人工智能·云计算·腾讯云·cloudbase
运维行者_13 小时前
通过Applications Manager的TCP监控确保无缝网络连接
运维·服务器·网络·数据库·人工智能
j7~13 小时前
【MYSQL】视图--详解
数据库·mysql·视图的定义·视图的基本使用·视图的规则和限制
我是一颗柠檬14 小时前
【Redis】主从复制Day9
java·数据库·redis·后端
Wenzar_14 小时前
GeoHash+Redis Streams实时围栏系统实战
java·数据库·redis·junit
侯盛鑫14 小时前
理解 RocksDB IngestExternalFile
数据库·后端
ECT-OS-JiuHuaShan14 小时前
辩证函数,渡劫代谢:时势造英雄,英雄发神经
数据库·人工智能·机器学习
Mr.朱鹏14 小时前
基于 postgres_fdw 的跨库查询方案
java·数据库·spring boot·sql·spring·postgresql
Leo.yuan14 小时前
MySQL到Hive数据同步怎么选工具?FineDataLink全链路方案实测
数据库·hive·mysql