Mysql索引列如果不是is not null可能索引失效2023-06-08

Mysql,包括tidb,索引列如果不是is not null可能索引失效!

如何要对该字段索引,建表时先设置为is not null,实在是业务没有值默认一个无相干的值也行。

其次,如果需要索引的字段为null,也可能通过与一个is not null的字段组合索引,也能达到索引不失效的目的(需设置第一次索引字段),这个我本人没有验证。

另外,网上也提到,通过实验(本人未验证):

1、mysql中对索引的优化,如果查询条件为is null命中结果小于40%,会走索引;

1、mysql中对索引的优化,如果查询条件为is not null命中结果小于30%,会走索引;

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容