or 不知道哪一个字段会使用所以干脆不使用索引
如果使用了or关键字,那么它前面和后面的字段都要加索引,不然所有的索引都会失效,这是一个大坑。
or
这个原因就更简单了
在 WHERE 子句中,如果在 OR 前的条件列是索引列,而在 OR 后的条件列不是索引列,那么索引会失效 举个例子,比如下面的查询语句,b 是主键,e 是普通列,从执行计划的结果看,是走了全表扫描。
优化
这个的优化方式就是 在 Or 的时候两边都加上索引
就会使用索引 避免全表扫描
https://mp.weixin.qq.com/s/QBReuBhmbgSWhcploKp-qQ