赞
踩
1.用!= 或者 <> 导致索引失效
2.类型不一致导致的索引失效
3.函数导致的索引失效
如:
SELECT * FROMuser
WHERE DATE(create_time) = ‘2020-09-03’;
如果使用函数在索引列,这是不走索引的。
4.运算符导致的索引失效
SELECT * FROMuser
WHERE age - 1 = 20;
如果你对列进行了(+,-,*,/,!), 那么都将不会走索引。
5.OR引起的索引失效
SELECT * FROMuser
WHEREname
= ‘张三’ OR height = ‘175’;
OR导致索引是在特定情况下的,并不是所有的OR都是使索引失效,如果OR连接的是同一个字段,那么索引不会失效,反之索引失效。
6.模糊搜索导致的索引失效
SELECT * FROMuser
WHEREname
LIKE ‘%冰’;
当%
放在匹配字段前是不走索引的,放在后面才会走索引。
7.NOT IN、NOT EXISTS导致索引失效
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。