索引失效的七种情况如下: 1、模糊查询的前导通配符:当使用模糊查询(如 LIKE ‘%abc’)时,索引失效,因为通配符在前面会导致索引无法使用。 2、未使用索引字段进行过滤:如果查询条件没有使用到创建的索引字段,数据库可能不会使用该索引。 3、数据类型不匹配:如果查询条件的数据类型与索引字段的数据类型不匹配,数据库无法使用索引。 4、使用函数操作:如果查询条件中对字段进行了函数操作(如 LOWER(column)),索引可能失效,因为数据库无法直接使用索引。 5、OR 运算:在 OR 运算中,如果其中一个条件使用了索引,而另一个条件没有使用索引,整个查询可能会导致索引失效。 6、使用 NOT 运算:NOT 运算通常会使索引失效,因为数据库无法使用索引来高效处理 NOT 运算。 7、表连接中的索引失效:如果在表连接查询中,连接条件中的字段没有索引,可能导致索引失效。