Я попытался отобразить фактический план выполнения хранимой процедуры, поскольку я разместил здесь. Всего 17 запросов, и вот часть плана выполнения последнего запроса. Этот запрос сложнее других, потому что время выполнения будет намного меньше, если я уберу эту часть.
Для запроса 17 пять операторов выбора объединяются вместе, и из объединенного набора выбираются отдельные строки.
Я новичок в этой части SQL, и мне любопытно, что:
- почему стоимость запроса 17 такая низкая, но на самом деле занимает больше всего времени выполнения;
- есть пять выделенных блоков, на завершение которых ушло около 50 секунд, но их стоимость также очень низкая;
- общее время выполнения 1 мин 59 сек, однако сумма пяти блоков около 4 мин;
- не уверен, что предоставил достаточно информации, но есть ли способы улучшить эту хранимую процедуру? Я добавил некластеризованный индекс, чтобы помочь, но кажется, что индекс не использовался.