mysql为索引设置合适的长度

select count(distinct left(name,35))/count(*) from b2b_goods;

通过以上sql来确定合适的索引长度

b2b_goods为表名;
name为设置索引的字段名称;
35为设置的索引的长度;

例如该name字段长度为100
当上述sql的‘35’从0开始不断增加到100时,而上面的查询结果应该是从0开始逐渐趋近于1直到达到1的一条曲线,类似于下图:
在这里插入图片描述

而当字段长度很长的时候,这时候去给索引设置长度时,索引的覆盖率达到90%以上,也就是最开始的查询结果在0.9以上即可。
如果需要更高要求,那么就可以继续添加索引长度,使其达到99%或100%。

猜你喜欢

转载自blog.csdn.net/qq_37823979/article/details/108979216