我在表中有一个UNIQUE
字段,需要快速搜索。我需要对它进行索引吗?
搜索唯一字段和索引字段的速度或资源使用是否会有所不同?
不需要重新索引。当您指定UNIQUE KEY
时,该列已经被索引了。因此,在性能上与其他相同类型的索引列(例如PRIMARY KEY)没有区别。
但是,如果类型不同,则会有一些性能差异。
每个UNIQUE
字段都按定义使用UNIQUE INDEX
进行索引 - 这也恰好是最快的可搜索访问路径。
PRIMARY KEY
或者 UNIQUE INDEX
。UNIQUE INDEX
和 INDEX
之间的性能,在选择时没有区别,因为两者都将使用相同的算法,即哈希或B树。只是使用 UNIQUE
索引,特别是数字类型的 INT
,它比包含重复项的索引更快,因为像 B 树这样的算法可以更有效地获取所请求的行。