首页 > 数据库技术 > 详细

MySQL_前缀索引_建立

时间:2015-07-05 16:21:27      阅读:261      评论:0      收藏:0      [点我收藏+]

-- 查看出现频率
select count(*) as cnt,city
from sakila.city_demo group by city order by cnt desc limit 10;

1.select count(distinct city)/count(*) from sakila.city_demo;

*完整列的选择性

2. select count(distinct left(city,3))/count(*) as sel3 ,
count(distinct left(city,4))/count(*) as sel4 ,
count(distinct left(city,5))/count(*) as sel5 ,
count(distinct left(city,6))/count(*) as sel6 ,
count(distinct left(city,7))/count(*) as sel7

from sakila.city_demo;

*前缀输出越贴近 1 输出,性能越高

3. alter table sakilal.city_demo add key (city(7));

使用场景:

16进制唯一ID使用前缀索引。 通常使用前8位,性能显著提高

MySQL_前缀索引_建立

原文:http://www.cnblogs.com/MarchThree/p/4622197.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!