在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%'