mysql where条件使用了or会不会扫全表

2025-03-26 02:50:25
推荐回答(2个)
回答1:

是的
但是使用索引在某些情况下可以避免的:
1、where 语句里面如果带有or条件, myisam表能用到索引, innodb不行。
2、必须所有的or条件都必须是独立索引
3、用UNION替换OR (适用于索引列)
4、用in来替换or

回答2:

不管用不用都会扫全表,如果or是另一字段,扫两遍