|
|
|
Forum Guru
      
участник
Last Login: 14.10.2002 14:02
Сообщ.: 61,
Visits: 672
|
|
Прикол:-/ Сижу, отлаживаю сохранёнку в QA. Сохранёнка делает заготовки в виде 3 набора данных для дальнейшего формирования сводной таблицы на клиенте. Короче 3 SELECTа и пара входных параметров. Так вот , когда я запускаю все эти SELECTы без упаковки их в виде сохранённой процедуры - задача идёт ~1 секунду. Когда я запускаю тоже самое через EXEC <имя_процедуры> <список_параметров> - задача решается 11 секунд. Методом исключения легко обнаружилось, что всё торможение проиходит на SELECTе : SELECT <список_полей> FROM <много_джойнов> WHERE id NOT IN (SELECT ttt.id FROM <много_джойнов> ).
Но я не понимаю, почему скорость падает на ПОРЯДОК, при упаковки этих SELECTов в сохранённую процедуру.
С уважением к all, Сергей.
|
|
|
|
|
Supreme Being
      
участник
Last Login: 21.06.2006 23:51
Сообщ.: 326,
Visits: 3 588
|
|
| а ты уверен, что это не время, затраченное на компиляцию?
|
|
|
|
|
Forum Guru
      
участник
Last Login: 14.10.2002 14:02
Сообщ.: 61,
Visits: 672
|
|
На компиляцию уходит где-то ококло 1 сек. Повторные запуски EXEC <имя процедуры> выполняются по времени одинаково. У меня есть подозрение, что на скорость так сильно влияет физическое расположение данных, вызываемых этой процедурой. В общем - загадка :-((.
|
|
|
|