Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: SQL Server
База данных SQL Azure Управляемый экземпляр SQL Azure
В путеводителе по плану можно использовать любые сочетания допустимых подсказок запроса. Когда структура плана совпадает с запросом, предложение OPTION, указанное в предложении указания структуры плана, добавляется к запросу, прежде чем запрос подвергается компиляции и оптимизации. Если в запросе, совпавшем со структурой плана, уже присутствует предложение OPTION, указания запроса, заданные в структуре плана, заменяют рекомендации в запросе. Однако, чтобы шаблон плана совпал с запросом, который уже содержит предложение OPTION, необходимо включить предложение OPTION этого запроса при указании в инструкции sp_create_plan_guide текста запроса, с которым нужно сопоставление. Если необходимо, чтобы подсказки, указанные в руководстве плана, были добавлены к подсказкам, которые уже существуют в запросе, вместо того, чтобы заменить их, следует указать и исходные, и дополнительные подсказки в предложении OPTION структуры плана.
Внимание
Путеводители по планам, в которых неправильно используются подсказки запросов, могут вызывать проблемы с компиляцией, выполнением или производительностью. Плановые руководства следует использовать только опытным разработчикам и администраторам баз данных.
Часто используемые подсказки запросов в путеводителях по планам
Запросы, для которых могут быть полезны указания планов, обычно основаны на параметрах и могут работать неэффективно, поскольку они используют кэшированные планы запросов, в которых значения параметров не отражают ни наихудший, ни наиболее типичный сценарий. Для решения этой проблемы можно использовать подсказки запросов OPTIMIZE FOR и RECOMPILE. OPTIMIZE FOR указывает SQL Server использовать определенное значение для параметра при оптимизации запроса. Указание RECOMPILE сообщает серверу, что после выполнения план запроса нужно удалить и что оптимизатору запросов нужно будет перекомпилировать план при следующем выполнении запроса. См. пример в статье Руководства планов.
Кроме того, в качестве подсказок запроса можно указать табличные подсказки INDEX, FORCESCAN и FORCESEEK. Если они указаны как подсказки запроса, эти подсказки работают как встроенная табличная подсказка или подсказка представления. Указание INDEX заставляет оптимизатор запросов использовать только указанные индексы для доступа к данным в указанной таблице или представлении. Указание FORCESEEK принудительно заставляет оптимизатор использовать для доступа к данным в указанной таблице или представлении только операцию индексного поиска. Эти указания предоставляют дополнительные функциональные возможности структуре плана и позволяют оказывать большее влияние на процесс оптимизации запросов, использующих структуру плана.