赞
踩
很多情况下,我们需要根据一个长字符串类型的字段去查找记录,比如身份证,邮箱,为了避免全表扫描,就需要为字符串字段添加索引。
由于Mysql支持前缀索引,所以我们可以选择将整个字段添加索引,或者只将前一部分的字符串加上索引:
#整个字段
alter table T add index index1(email);
#一部分字段
alter table T add index index2(email(6));
假设我们执行一条查询sql:
select id,name,email from SUser where email='zhangssxyz@xxx.com';
从 index1 索引树找到满足索引值是’zhangssxyz@xxx.com’的这条记录,取得 ID2 的值;
到主键上查到主键值是 ID2 的行,判断 email 的值是正确的,将这行记录加入结果集;
取 index1 索引树上刚刚查到的位置的下一条记录,发现已经不满足 ema
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。