KB4538497 – ПОПРАВКА: Бавна производителност на заявки при използване на предикати за заявки с UPPER, LOWER или RTRIM с CE по подразбиране през SQL Server 2017 и 2019 г.

Отнася се за
SQL Server 2017 on Windows SQL Server 2019 on Windows

Симптоми

Да приемем, че имате инсталиран Microsoft SQL Server 2017 или 2019 и че той се изпълнява с оценка за брой обекти по подразбиране (CE). Изпълнявате заявка, която има филтърен предикат в колона Col1. Предикатите за заявки имат вградени предикати UPPER, LOWER или RTRIM. В Col1 има статистика, която да се използва от оптимизатора. При този сценарий може да се наблюдават неточни оценки на брой обекти и че SQL Server използва неефективен план. Следват някои заявки с предикати:

ИЗБЕРЕТЕ person_id ОТ Person WHERE (EMAIL LIKE UPPER(N'@live.com%'))

SELECT person_id FROM Person WHERE (email = UPPER(N'msft@live.com'))

      

Състояние

Microsoft потвърждава, че това е проблем в продуктите на Microsoft, които са изброени в раздела „Важи за“.

Решение

Този проблем е решен в следните кумулативни актуализации за SQL Server:

За кумулативните актуализации за SQL Server:

Всяка нова кумулативна актуализация за SQL Server съдържа всички актуални поправки и корекции на защитата, които са били включени в предишната кумулативна актуализация. Прегледайте последните кумулативни актуализации за SQL Server:

Забележка Тази корекция изисква едно от следните неща, за да влезе в сила:

Справки

Научете повече относно терминологията, която Microsoft използва за описване на актуализациите на софтуера.