0
A VARCHAR(1000)
列将包含在WHERE
子句中,例如,VARCHAR上的MySQL索引(1000)
WHERE propertyValue IN ('sample, ...')
这些值将大多是唯一的,但不保证/约束。
我想索引这个,我想知道最好的方法是什么。我意识到像这样索引列会使插入速度变慢。
会将该值的散列值存储为CHAR(64)
,并且索引和搜索速度会更快?我的想法是一个固定大小的值,比较适合索引。
我使用5.1和INNODB
使用INDEX时,所有INSERT语句都需要更新INDEX,这可能会降低INSERT语句的速度,所以在使用VARCHAR(1000)在列上创建INDEX时应谨慎行事。根据您在本专栏中存储的内容,在使用WHERE x IN(a,b,c)时,可能需要使用完整的INDEX,而不是部分INDEX。 – Cninroh 2013-05-02 15:10:11