ИСПРАВИТЬ: Низкая производительность при выполнении запроса содержит коррелированные И предикаты в SQL Server 2008 или 2008 R2 SQL Server или SQL Server 2012

Переводы статьи Переводы статьи
Код статьи: 2658214 - Vizualiza?i produsele pentru care se aplic? acest articol.
Корпорация Майкрософт распространяет Microsoft SQL Server 2008 R2 или Microsoft SQL Server 2008 или 2012 Microsoft SQL Server исправления в один загружаемый файл. Так как исправления являются накопительными, каждый новый выпуск содержит все исправления и обновления безопасности, которые были включены в предыдущие 2008 R2 SQL Server или SQL Server 2008 или Microsoft SQL Server 2012 выпуска обновления.
Развернуть все | Свернуть все

В этой статье

Проблема

Рассмотрим следующую ситуацию. Запустите запрос, содержащий несколько предикатов И Microsoft SQL Server 2008, корпорация Майкрософт SQL Server 2008 R2 или Microsoft SQL Server 2012. Условия И предикаты соотносятся. В этом случае возникают низкой производительности в 2008 г. SQL Server. Например Данная проблема возникает при выполнении запроса, следующего вида:
(column1 = constant1 or column1 = constant2 or …) and (column2 = constant3 or column2 = constant4 or …) and …

Причина

Эта проблема возникает, так как оптимизатор запросов выбирает неэффективного плана запроса, если запрос содержит коррелированные И предикаты. Предполагаемое количество строк, удовлетворяющие условиям предиката AND , SQL Server предполагается, что все условия являются независимыми. Если условия соотносятся, SQL Server снижает количество элементов И предикаты.

Решение

Чтобы решить эту проблему, примените следующее накопительное обновление. После установки обновления необходимо включить флаг трассировки 4137, чтобы добавить новый алгоритм для оценки мощности И предикатов.

ПримечаниеЭто обновление относится только к предикаты фильтров.

Накопительное обновление информации

SQL Server 2008 с пакетом обновления 3

Исправление этой уязвимости первого выпуска накопительного обновления 7 для SQL Server 2008 с пакетом обновления 3. Дополнительные сведения о том, как получить этот накопительный пакет обновления щелкните следующий номер статьи базы знаний Майкрософт:
2738350 Накопительный пакет обновления 7 для пакета обновления 3 (Sp3) для SQL Server 2008 г.
Примечание Поскольку построения являются накопительными, каждый новый выпуск исправление содержит все исправления и исправить все исправления безопасности, которые были включены в предыдущие SQL Server 2008 с пакетом обновления 3 (Sp3) версии. Рекомендуется, чтобы учесть применение последний выпуск исправления, содержащего это исправление. Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:
2629969 2008 SQL Server строит, выпущенных после пакета обновления 3 (Sp3) для SQL Server 2008 г.

SQL Server 2012

Исправление этой уязвимости первого выпуска в накопительное обновление 1 для SQL Server 2012. Для получения дополнительных сведений о этот накопительный пакет обновления щелкните следующий номер статьи базы знаний Майкрософт:
2679368 Накопительный пакет обновления 1 для SQL Server 2012
Примечание Поскольку построения являются накопительными, каждый новый выпуск исправление содержит все исправления и исправить все исправления безопасности, которые были включены в предыдущие 2012 SQL Server выпуска. Корпорация Майкрософт рекомендует учесть применение последний выпуск исправления, содержащего это исправление. Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:
2692828 2012 SQL Server строит, выпущенных после 2012 SQL Server
Необходимо установить исправление SQL Server 2012 2012 SQL Server установки.

SQL Server 2008 R2 с пакетом обновления 1

Исправление этой уязвимости первого выпуска накопительного обновления 5 для SQL Server 2008 R2 с пакетом обновления 1. Дополнительные сведения о том, как получить этот накопительный пакет обновления щелкните следующий номер статьи базы знаний Майкрософт:
2659694 Накопительный пакет обновления 5 для SQL Server 2008 R2 с пакетом обновления 1
Примечание Поскольку построения являются накопительными, каждый новый выпуск исправление содержит все исправления и исправить все исправления безопасности, которые были включены в предыдущие 2008 R2 SQL Server выпуска. Рекомендуется, чтобы учесть применение последний выпуск исправления, содержащего это исправление. Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:
2567616 SQL Server 2008 R2 строит, выпущенных после пакета обновления 1 (SP1) для SQL Server 2008 R2

SQL Server 2008 с пакетом обновления 2

Исправление этой уязвимости первого выпуска накопительного обновления 8 SQL Server 2008 с пакетом обновления 2. Для получения дополнительных сведений о этот накопительный пакет обновления щелкните следующий номер статьи базы знаний Майкрософт:
2648096 Накопительный пакет обновления 8 SQL Server 2008 с пакетом обновления 2
Примечание Поскольку построения являются накопительными, каждый новый выпуск исправление содержит все исправления и исправить все исправления безопасности, которые были включены в предыдущие 2008 SQL Server выпуска. Корпорация Майкрософт рекомендует учесть применение последний выпуск исправления, содержащего это исправление. Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:
2402659 2008 SQL Server строит, выпущенных после пакета обновления 2 (SP2) для SQL Server 2008 г.
Microsoft SQL Server 2008 исправлений создаются для определенного SQL Server пакеты. Для установки пакета обновления 2 (SP2) для SQL Server 2008, необходимо установить исправление SQL Server 2008 с пакетом обновления 2. По умолчанию какие-либо исправления, входящее в пакет SQL Server включены в следующий пакет обновления SQL Server.

Статус

Корпорация Майкрософт подтверждает, что это является проблемой в продуктах Майкрософт, перечисленных в разделе «Относится к».

Ссылки

Для получения дополнительных сведений о добавочных модель обслуживания для SQL Server щелкните следующий номер статьи базы знаний Майкрософт:
935897 Добавочных модель обслуживания доступен из группы SQL Server для доставки исправления для возникающих ошибок
Для получения дополнительных сведений о схеме именования для обновления SQL Server щелкните следующий номер статьи базы знаний Майкрософт:
822499Схема присвоения имен пакетам обновлений программного обеспечения Microsoft SQL Server
Для получения дополнительных сведений о терминологии, обновление программного обеспечения щелкните следующий номер статьи базы знаний Майкрософт:
824684 Описание стандартной терминологии, используемой для описания обновлений программных продуктов Майкрософт

Свойства

Код статьи: 2658214 - Последний отзыв: 17 сентября 2012 г. - Revision: 3.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
Ключевые слова: 
kbqfe kbfix kbexpertiseadvanced kbsurveynew kbmt KB2658214 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке: 2658214

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com