mysql 不能使用索引的情况

mysql在什么情况下,建立了索引使用不到呢?
1.类型转换下,例如varchar 查询的时候传递的是整形(不带引号)
2.like搜索前面使用了 %,例如 like ‘%a%’
3.没有遵循最左原则,例如索引为 a b 的联合索引 但是查询的时候使用的是 where b=x and a=y
4.not 类 not in ,!= ,<> 等查询
5.对索引进行运算 例如 where a+1=b
6.查询优化器如果扫描全表的时候会比使用索引效率高的时候会直接扫描全表不使用索引
以上有错误请指正谢谢

你可能感兴趣的:(mysql 不能使用索引的情况)