可能重复:
Difference of create Index by using include column or not using
编辑:忽略此POST,我将其标记为mod,因为它是重复的。谢谢大家的回复!
创建多列索引,这两者之间的区别是什么:
CREATE INDEX MyIndex ON TABLE1 (COLUMN1 ASC, COLUMN2 ASC, COLUMN3 ASC, [etc...])
VS
CREATE INDEX MyIndex ON TABLE1 (COLUMN1 ASC)
INCLUDE (COLUMN2, COLUMN3, [etc...] )
MSDN说后者意味着包括非键列。这在外行人的意义上是什么意思?重点是,我基本上处理的情况是我必须优化查询,只需要表中几十列中的3-5列数据,使用其中一列作为“基础”索引,以便说出并获得来自同一行的其他列值。
在一个上创建聚簇索引不是一个选项,因为表会定期更新,这往往会产生大量的锁定和等待。我正在测试这些,但我也希望你们能够得到明智的回答。 :)