我有以下表格架构:
CREATE TABLE [Foo](
[id] [int] NOT NULL,
[name] [varchar(250] NULL,
[datetime_stamp] [datetime] NULL,
CONSTRAINT [pk_Positions] PRIMARY KEY CLUSTERED
( [id] ASC))
假设有插件每天发生n次。每个插入包含26000行。对于每个插入,id是唯一值。 E.G:插入1,id 1,插入2所有行的id为2。 该表有几百万行。 如果我想根据时间检索给定插入的行,那么在where子句中使用datetime_stamp是否有意义?虽然它不是聚集的,但它仍然会一起位于表中。或者是否有更有效的方法来检索给定日期的所有插入?
答案 0 :(得分:1)
在datetime_stamp
列上创建索引。
CREATE INDEX IX_Foo_DatetimeStamp ON Foo(datetime_stamp)