mysql索引失效几个点
- 给索引加上函数索引失效
left(–,3)=‘abc’ - 范围查询右侧索引失效
emp(age,deptid,name) 其中deptId>10 - 不等于失效
deptId<>20或者deptId!=20 - like后首字母%索引失效
like ‘%abc’ - 类型不匹配失效
emp.name=123其中name是字符串 - is not null索引失效
deptId is not null
is not null 优化方案
使用IFNULL(条件字段,‘自定义取值’)!=‘自定义取值’ 实现IS NOT NULL效果。
示例:
is not null 可以改为 IFNULL(列名,‘0’)!=‘0’
参考文档:
https://blog.csdn.net/yabingshi_tech/article/details/102937435
https://blog.csdn.net/qq_41210350/article/details/89893945