Как мне настроить запрос - PullRequest
1 голос
/ 24 августа 2010

У меня запрос, который выполняется медленно. Я знаю, в целом, чтобы повысить производительность, ограничить количество соединений и пытаться использовать процы вместо простых запросов. Из-за бизнес-правил я не могу использовать процы. Я уже сократил количество соединений столько, сколько я могу себе представить.

Какой следующий шаг в настройке запросов?

Ответы [ 2 ]

3 голосов
/ 24 августа 2010

Добавление индексов - это, вероятно, вещь номер один, которую вы можете сделать, чтобы улучшить производительность запросов, и вы не упомянули об этом.

Рассматривали ли вы план выполнения, чтобы выяснить, можно ли его улучшить с помощью дополнительных индексов?

Кроме того, вы должны убедиться, что ваши запросы написаны таким образом, чтобы они могли использовать любые индексы, которые представлены эффективно (например, избегайте несертируемых конструкций, избегайте *)

2 голосов
/ 24 августа 2010

самое простое, что нужно сделать, это зайти в Management Studio и запустить эту команду:

SET SHOWPLAN_ALL ON

, затем запустите ваш фактический запрос.

Вы не получите свой обычный результат запроса. Он даст вам план выполнения (очень подробный список того, что SQL Server делает для превращения вашего запроса) в результирующий набор Посмотрите на вывод и попробуйте узнать, что это значит. Я обычно ищу «SCAN», это медленная часть, и я пытаюсь переписать его, чтобы он использовал индекс.

...