输入banner图图片脚本导航/分类

mysql 索引长度和区分度

count(distinct left(test,5))/count(*) from table;

求出一个浮点数,这个浮点数是逐渐趋向1的,网上找了个图片来分析下;

技术分享

这个地方观察到,当索引长度达到4的时候就已经趋向1了,所以长度设为4是最佳的,在大点增加的索引效果已经很小了,这个地方不是说必须接近1才行;

其实这个值达到0.1就已经可以接受了;总之要找一个平衡点;

 

还有一些特殊的字段常规方法用起不太顺畅,比如有一个url字段,绝大部分的url都是 http://www. 开头的

这种情况下索引长度取取到11都是无效的,需要更长的索引,那么有没有优雅的方式来解决呢;

第一种方法: 可以将数据倒序存入数据库;

第二种方法:对字符串进行crc32哈希处理;

两种方法都不错,当然要配合客户端程序完成;

mysql 索引长度和区分度

标签:ble   浮点数   解决   效率   公式   程序   随机   内存   color