索引失效有哪些情况

索引失效有哪些情况

  • 模糊匹配使用左模糊或者左右模糊匹配
    • 因为索引时按照从第一个字符开始排序,也就是按照前缀排序,左模糊查询的时候,符合查询条件的前缀是无规律的,并不能使用索引。
  • 查询条件中对索引字段进行做了函数,类型转换,计算操作之后
    • 因为索引保存的是原始值,并不是操作之后的数值,但是mysql8.0之后索引可以保存操作后的字段值
  • 联合索引没有遵循最左匹配原则
  • or左右有一个不是索引字段
  • 使用了大于,小于,不等于,但是大于等于和小于等于可以走索引的
  • is null 或者is not null有时候失效,有时候不失效,取决于执行器的成本大小。
posted @ 2023-09-13 22:32  xiuer211  阅读(61)  评论(0)    收藏  举报