面试问到了这个问题,然后我一脸懵逼,平时不注意就给自己挖了坑,记录下来,方便查询
- 在 WHERE 子句中使用 !=或<>操作符
- 在 WHERE 子句中使用 or来连接条件
- 字段类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不会使用索引
- LIKE 的模糊查询以 %开头,索引失效
- 在 WHERE 子句中对字段进行表达式操作 - SELECT * FROM user WHERE age/10 = 2; #失效 SELECT * FROM user WHERE age = 2*10; #有效
- 在 WHERE 子句中对字段进行函数操作,这将导致引擎放弃使用索引而进行全表扫描
- 在 WHERE 子句中的 “=” 左边进行函数、算术运算或其他表达式运算会导致索引失效
 
                             
                            
2 条评论
面试了已经,真快啊
已经入职好久了