- 联合索引不满足最左匹配原则: 联合索引的字段顺序对查询的影响很大,必须满足最左匹配原则。
- 模糊查询最前面的为不确定匹配字符: 模糊查询中,如果最前面的字符是不确定的,索引会失效。
- 索引列参与了运算: 如果在查询条件中对索引列进行运算,索引可能会失效。
- 索引列使用了函数: 查询条件中使用函数,比如
IFNULL,会导致索引失效。 - 索引列存在类型转换: 如果查询条件中进行了类型转换,比如将字符串与整数进行比较,索引可能失效。
- 索引列使用 is not null 查询: 在查询中使用
is not null会导致索引失效,而is null则不会。