是否应为用于记录查询的10位哈希字符串列创建索引?
是否需要为10字符哈希查询列创建索引?
- 如果你经常用这个哈希列作为查询条件(比如执行
SELECT * FROM 表名 WHERE hash列 = 'ghg65f54r3'这类语句),那一定要建索引。这类哈希字符串的基数极高(几乎每个值都是唯一的),B树索引能直接定位到目标记录,完全避免全表扫描,查询速度会快很多。 - 如果你很少用这个列做查询,只是偶尔查一次,那没必要建索引——毕竟索引会占用额外存储空间,还会增加插入、更新、删除记录时的维护成本,得不偿失。
另外提一句:10字符的字符串索引占用的存储空间并不大,不用太担心资源消耗的问题。
内容的提问来源于stack exchange,提问作者panthro
相关产品推荐
相关产品推荐

