mysql中blob,text字段的合成索引

  在mysql中,原来有一个叫合成索引的,可以提高blob,text字段的效率性能,
但只能用在精确查询,核心是增加一个列,然后可以用md5进行散列,用散列值查找
则速度快

比如:

create table abc(id varchar(10),context blog,hash_value varchar(40));

insert into abc(1,repeat('hello',2),md5(context));

查找
  select  from abc where hash_value=md5(repeat('hello',2));
  如需要进行模糊,则提供了前缀索引

create index idx_blob on abc(context(100));
则只对前100个字符模糊查询,
注意%不能放前面,只能  select * from abc where context like 'hello%'

你可能感兴趣的:(mysql)