关闭

MySQL索引失效的情况有哪些?

瞎溜达 1年前 ⋅ 105 阅读
  • like以%开头索引无效,当like以&结尾,索引有效。
  • or语句前后没有同时使用索引,当且仅当or语句查询条件的前后列均为索引时,索引生效。
  • 组合索引,使用的不是第一列索引时候,索引无效,即最左匹配原则。
  • 数据类型出现隐式转换,如varchar不加单引号的时候可能会自动转换为int类型,这个时候索引失效。
  • 在索引列上使用IS NULL或者IS NOT NULL时候,索引失效,因为索引是不索引空值的。
  • 在索引字段上使用not、<>、!=时是不会使用索引的,对于这样的处理只会进行全表扫描。
  • 对索引字段进行计算操作,函数操作时不会使用索引。
  • 当全表扫描速度比索引速度快的时候不会使用索引。

全部评论: 0

    我有话说: