我有一个在id
上有聚簇索引的表[SomeID] [bigint] IDENTITY(1,1) NOT NULL,
当我这样做时
select top 1000 * from some where date > '20150110'
我的记录不按顺序
当我这样做时:
select top 1000 * from some where date > '20150110' and date < '20150111'
它们是有序的吗?
索引是:
CONSTRAINT [PK_Some] PRIMARY KEY CLUSTERED
(
[SomeID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
我以前从未遇到过这个问题,有没有人知道发生了什么以及如何解决这个问题。
由于
答案 0 :(得分:1)
如果您没有指定订单,则无法依赖订单。添加order by
子句。
否则数据库将尽快获取结果,并不总是按索引的顺序。