Я получаю что-то странное. я управлял этим sql:
SELECT Id , GameTypeId , PlayerId , BetAmount , Profit ,
DateAndTime
FROM Results
WHERE DateAndTime >= DATEADD (DAY , -1 , SYSDATETIME ())
AND
DateAndTime < SYSDATETIME ()
ORDER BY DateAndTime ASC;
у меня есть некластерный индекс в столбце даты
и фактическое количество возвращаемых строк составляет
672 строки из 1600016 строк в таблице.
(примерный ряд был 1)
после этого я запустил этот sql:
declare @d DATETIME2(7)
set @d = DATEADD (DAY , -1 , SYSDATETIME ())
declare @d2 DATETIME2(7)
set @d2 = SYSDATETIME ()
SELECT Id , GameTypeId , PlayerId , BetAmount , Profit ,
DateAndTime
FROM Results
WHERE DateAndTime >= @d
AND
DateAndTime < @d2
ORDER BY DateAndTime ASC;
и фактический план выполнения был СКАНИРОВАНИЕ !!!
и фактическое количество возвращаемых строк составляет
672 строки из 1600016 строк в таблице.
(примерный ряд был 144000 rwws)
Кто-то знает, что здесь произошло?!?!?