首页 > 数据库技术 > 详细

MySQL索引

时间:2016-03-09 19:17:16      阅读:286      评论:0      收藏:0      [点我收藏+]

1. 合成索引
合成索引就是根据具体的来生成hash值,查找的时候通过hash值来查找就可以了。像blob、text这种数据直接放在where条件中查询效率是非常低的,所以可以使用合成索引。由于索引是hashcode,所以合成索引只能用于精确查询,对‘<‘、‘>‘等范围查找是没有作用的。我们可以使用MD5()、SHA1()或者CRC32()来生成索引,也可以在Java等编程语言中生成。如果生成的hash字符串尾部有空格,就不能存入char类型字段里,因为char会去掉尾部空格。

create table synthetic_test(
    id int,
    content text,
    hash_index varchar(50)
);

insert into synthetic_test values (1, ‘abcd‘, md5(content));

技术分享

这个时候我们就可以直接使用下面的SQL来查询:

select * from synthetic_test where hash_index = MD5(‘abcd‘);


本文出自 “銅鑼衛門” 博客,请务必保留此出处http://jaeger.blog.51cto.com/11064196/1749147

MySQL索引

原文:http://jaeger.blog.51cto.com/11064196/1749147

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