의 순서로 나는 SQL 서버 행은하지 클러스터 된 인덱스
내 기록
select top 1000 * from some where date > '20150110'
순서에없는 수행 ID
[SomeID] [bigint] IDENTITY(1,1) NOT NULL,
에 클러스터 된 인덱스가있는 테이블이
내가 할 때 :
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]
, 사람이 무슨 일이 일어나고 있는지의 아이디어가 않고, 나는이 문제를 해결할 수있는 방법.
감사합니다.
결과의 특정 순서를 보장하는 유일한 방법 (실제로 *** 유일한 ***)은'ORDER BY'를 사용하는 것입니다. DB를 사용하지 않으면 임의의 순서로 행을 반환 할 수 있습니다. –
두 번째 인덱스를 추가 할 때이 부분이 넘어졌습니다. 또한보십시오 http://stackoverflow.com/a/6936967/10245 –