SQL一般优化

时间:2014-11-07 19:19:18

标签: sql sql-server-2008-r2 sql-optimization

最近被要求帮助进行查询优化

表格如下:

create table dbo.Table
( 
 id int identity primary key clustered ,
 column_1 varchar(64) not null  ,
 Date datetime not null ,
 Column_2 varchar (32) not null ,
 Column_3 int not null 
)

并选择看起来像

select * from Table where column_1 = @value1 and Date > @value2

我建议在select中显示列名而不是*,因为它可以帮助避免加载不需要的数据,同时在column_1上提出create nonclustered index。但是,执行计划仍然显示查询使用的内存量相同。

我还应该在查询中检查或添加什么?

1 个答案:

答案 0 :(得分:2)

您可以使用索引优化查询。您想要的是column_1date

create index idx_table_column1_date on table(column_1, date);