在SQL Server中创建索引的最佳方法

时间:2015-04-15 07:17:24

标签: sql sql-server sql-server-2008

我的表格中有四列(a,b,c,d),所有这些列都依赖于列(日期),所以在我的查询中我有:

 select a where date 
 select b where date 
 select c where date 
 select d where date

我需要知道为所有这些创建索引的最佳方法是什么,我有两个建议:

第一个建议:

create i_a on a
create i_b on b
create i_c on c
create i_d on d
create i_date on date

第二个建议:

create i_a on a include date
create i_b on b include date
create i_c on c include date
create i_d on d include date

请哪一个更好用。

1 个答案:

答案 0 :(得分:2)

这可能会对您有所帮助:

CREATE NONCLUSTERED INDEX Index_Name ON TableName(Date) INCLUDE(A,B,C,D)

您要索引的列应该是用于过滤的列(WHERE子句)。您可以添加INCLUDE以避免查找。