Symptomy
Załóżmy, że masz zainstalowany program Microsoft SQL Server 2017 lub 2019 i że jest on uruchomiony z domyślne szacowanie kardynalności (CE). W kolumnie Kol1 kolumny jest wykonywane zapytanie zawierające predykat filtru. Microsoft predykaty mają wewnętrzne wielkie, małe lub RTRIM. W kolumnie Kol1 można uzyskać statystykę używane przez optymalizator. W tym scenariuszu może wystąpić nieścisła Kardynalność szacowania i program SQL Server używa niewydajnego planu. Poniżej przedstawiono kilka zapytań z predykatami:
Wybierz person_id od osoby, w której (adres e-mail JAK UPPER (N ' @live. com% '))
Wybierz person_id od osoby, w której (adres e-mail = UPPER(N'msft@live.com '))
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".
Rozwiązanie
Ten problem został rozwiązany w następujących zbiorczych aktualizacjach programu SQL Server:
Informacje dotyczące aktualizacji zbiorczych dla programu SQL Server:
Każda nowa Zbiorcza aktualizacja programu SQL Server zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji zbiorczej. Zapoznaj się z najnowszymi aktualizacjami zbiorczymi dla programu SQL Server:
-
Najnowsza Zbiorcza aktualizacja dla programu SQL Server 2019
-
Najnowsza Zbiorcza aktualizacja dla programu SQL Server 2017
Uwaga Ta poprawka wymaga jednej z następujące kroki:
-
QUERY_OPTIMIZER_HOTFIXES zestaw konfiguracji o zakresie bazy danych
-
Używanie wskazówki ENABLE_QUERY_OPTIMIZER_HOTFIXES
-
Włączanie flagi śledzenia 4199
Informacje
Informacje o terminologii używanej przez firmę Microsoft do opisywania aktualizacji oprogramowania.