我有一张像这样的表foo
:
id | column1
1 | normalized_string_format1
2 | normalized_string_format1
3 | normalized_string_format2
4 | normalized_string_format3
表格上的查询始终是:
SELECT * FROM foo WHERE column1 = 'some_string'
和
INSERT INTO foo (column1) VALUES ('some_string')
请注意,上例中的前两行有normalized_string_format1
,因此column1不是唯一的。我应该在column1中创建一些索引以提高性能吗?在这种情况下,我应该选择哪一个指数?
答案 0 :(得分:1)
如果表foo
不重要,那么在column1上添加索引可能会有利于提高性能。
您可以创建一个这样的索引:
CREATE INDEX foo_IX1 ON foo (column1)
INSERT / UPDATE / DELETE语句将执行更多工作,以维护索引条目。
但是在column1上使用等式谓词的SELECT语句将能够使用索引范围扫描操作,这意味着它可以避免检查表中的每个翻转行。