我有 MySQL InnoDb 表,我想在其中存储长字符串(限制为 20k 符号)。有没有办法为这个字段创建索引?
最佳答案
您可以将字段的 MD5 放入另一个字段并对其进行索引。然后当你进行搜索时,你会匹配未索引的完整字段和已索引的 md5 字段。
SELECT *
FROM large_field = "hello world hello world ..."
AND large_field_md5 = md5("hello world hello world ...")
large_field_md5 是索引,因此我们直接转到匹配的记录。如果有重复的 md5,可能需要测试 2 条记录。
关于长字符串的 MySQL 索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6486724/