基本上,我正在尝试更新SQL中的表,我想知道如果我向where
子句中的列添加索引,是否可以提高速度。
例如:
Update mytable
Set code1 = 1
Where Account > 115 and Account < 350
如果我将索引添加到Account
列中,它会提高还是降低我的速度?
答案 0 :(得分:0)
这是您的查询:
Update mytable
Set code1 = 1
Where Account > 115 and Account < 350;
在大多数情况下,mytable(Account)
上的索引将提高此查询的性能。该索引将使数据库引擎可以快速找到与查询匹配的行,然后仅更新那些行。
什么时候不起作用?索引的使用取决于索引的选择性(或更准确地说,是在优化阶段估算的选择性)。例如,如果所有帐户都在该范围内,则索引无济于事。但总的来说,索引会有所帮助。