Проблемы
Предположим, что у вас установлен Microsoft SQL Server 2017 или 2019 и что он работает с Оценка кратности по умолчанию (CE). Вы выполняете запрос с предикатом фильтра в столбце col1. Запроса Предикаты имеют встроенные функции ПРОПИСн, СТРОЧн и RTRIM. В столбце Столбец1 есть статистика, которая должна быть используется оптимизатором. В этом сценарии может возникнуть неточная мощность оценки и то, что SQL Server использует неэффективный план. Ниже приведены некоторые запросы, которые имеют предикаты.
Выберите person_id от человека, где (электронная почта LIKE "Верхний" (N "@live. com%"))
Выберите person_id от человека, где (электронная почта = UPPER(N'msft@live.com '))
Статус
Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".
Решение
Эта проблема исправлена в перечисленных ниже накопительных обновлениях для SQL Server.
Сведения о накопительных обновлениях для SQL Server.
Все новые накопительные обновления для SQL Server содержат все исправления и все исправления для системы безопасности, которые были включены в предыдущий накопительный пакет обновления. Ознакомьтесь с самыми последними накопительными обновлениями для SQL Server.
Примечание. Для этого исправления требуется один из для вступления в силу сделайте следующее:
-
QUERY_OPTIMIZER_HOTFIXES для конфигурации уровня базы данных значение on
-
Использование подсказки использование ENABLE_QUERY_OPTIMIZER_HOTFIXES
-
Включить флаг трассировки 4199
Ссылки
Ознакомьтесь с терминологией , которую корпорация Майкрософт использует для описания обновлений программного обеспечения.