数据库索引失效的情况

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

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

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

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

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

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

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

相关推荐
独泪了无痕3 分钟前
SQL数据类型转换:CAST详解及实践
数据库·sql·oracle
知识分享小能手3 分钟前
Oracle 19c入门学习教程,从入门到精通,Oracle 用户管理与权限分配 —— 语法详解与实战案例(13)
数据库·学习·oracle
DarkAthena4 分钟前
【GaussDB】GaussDB506版本A模式中的date类型
数据库·gaussdb
想做后端的前端5 分钟前
Redis中的Lua使用
数据库·redis·lua
小锋学长生活大爆炸6 分钟前
【工具】免费的文本读写API
java·数据库·mysql
晓风残月淡9 分钟前
mysql数据库完整备份恢复方案(二)
数据库·mysql·adb
l1t11 分钟前
DeepSeek总结的Turso的CTE支持情况
数据库·sqlite·turso
重生之绝世牛码18 分钟前
Linux软件安装 —— ClickHouse集群安装(集成Zookeeper)+ chproxy负载均衡
大数据·linux·数据库·clickhouse·软件安装·clickhouse集群安装·clickhouse负载均衡
l1t21 分钟前
修改德哥的PostgreSQL求解数独SQL在cedardb上运行
数据库·sql·postgresql·cedardb
想做一只开心的菜鸡22 分钟前
DARTS#01 | Tournament Sort算法 | MySQL深度翻页优化技巧 | 论文ByteSlice Review
数据库·mysql·算法