1、对于条件中含有is null 、is not null、!=条件索引失效全表扫描?
MySQL中决定使不使用某个索引执行查询的依据就是成本够不够小,如果null值很多,还是会用到索引的。
验证:一个大概3万数据的表,如果只有10多个记录是null
值,is null
走索引,not null
和!=
没走索引,如果大部分都是null
值,只有部分几条数据有值,is null
,not null
和!=
都走索引。
1、对于条件中含有is null 、is not null、!=条件索引失效全表扫描?
验证:一个大概3万数据的表,如果只有10多个记录是null
值,is null
走索引,not null
和!=
没走索引,如果大部分都是null
值,只有部分几条数据有值,is null
,not null
和!=
都走索引。