Есть отчет, который работает с большим количеством данных. Запрос к БД довольно прост и сам отрабатывает за 9 сек. Этот же запрос при формировании отчета может отрабатывать 20 и более минут (в зависимости от выбранного периода).
Профайлером обнаружено, что сам запрос с параметрами оборачивается в хранимую процедуру:
Код: Выделить всё
declare @p1 int
set @p1=1
exec sp_prepexec @p1 output,N'@StartDate datetime,@EndDate datetime',N'SELECT ...
',@StartDate='2015-05-01 00:00:00',@EndDate='2015-05-06 00:00:00'
select @p1
Если прогонять в БД хранимую процедуру, то проблема такая же - очень долго отрабатывает запрос т. е. через какое-то время отвисает и потом нужно ждать пока выполнится.
Можно ли как-то оптимизировать этот момент? Потому как такие проблемы появились после недавнего обновления.
Спасибо.