Alexander_fx,
План запроса смотрели? Если тот же запрос выполнить из SSMS, будет такое же поведение?
автор |
---|
может ли быть что при обращении к таблице которая не в памяти - даже при запросе небольшого кусочка данных - таблица или запрашиваемые индексы считываются в память полностью или с избытком? |
Может. Например, пусть сервер выбрал для вашего запроса Clustered Index Scan (а при чтении 5% таблицы скорее всего так и будет), и столбец time не является первым столбцом кластерного индекса. При этом случилось так, что все необходимые данные находятся где-то в начале индекса (например, в первых 10% страниц). Но сервер этого не знает, он должен прочитать всю таблицу. То есть за первые 10% времени будет получен весь результат, а остальные 90% сервер будет считывать данные, проверять условие "where time between", но ни одна запись в итоговый набор не попадёт.