索引varchar(225)列

时间:2017-02-01 10:48:54

标签: mysql hash

我有一个varchar字段,最多可包含225个字符,我需要在WHERE子句中使用此列的快速查找。

所以索引是一个好主意,但我听说索引大型列会减慢速度,并且应该创建一个单独的列,用于存储第一列的较短哈希并为此新列编制索引。

然后查询将执行WHERE hash_column = hash(x) AND long_column = x

之类的操作

这是一个很好的解决方案吗?我应该使用什么哈希?该表将有很多条目(超过数百万)。碰撞怎么样?如果具有相同散列的条目数量变得太多,该怎么办?即使有数十亿条款,它们是否会变得太多,或者是否存在不会发生冲突的哈希值?

在哈希列上有这个1索引还是我需要添加任何其他索引吗?

感谢您的帮助

编辑:我使用InnoDB。

0 个答案:

没有答案