0条评论
还没有人评论过~
mysql版本是5.7.16,想请教下in和between是否会走索引的问题
1.如果只有一个in条件,in的括号里面为一个参数,发现可以走索引
2.当in有两个参数的时候,就不会走索引了
3.in和between一起用(即使in里面只有一个参数),发现始终不会走索引(建立了联合索引)
而且当空表和表里有数据的时候,是否走索引也不一样...
有大佬能详细解答吗
in多的话会被优化为Join,应该会走索引的,是不是你数据量小被优化器给优化掉了,它认为走索引不如直接循环,毕竟在量小的情况下索引需要回表而循环不需要
in,between 单用,一起用是走索引的。可以 explain 一下就知道了。没走索引的话。就是被优化了