Sintomas
Suponha que você tenha o Microsoft SQL Server 2017 ou o 2019 instalado e que ele seja executado com estimativa de cardinalidade padrão (CE). Você executa uma consulta que tem um predicado de filtro na coluna col1. Pesquisa os predicados têm MAIÚSCULAs, MINÚSCULAs ou RTRIM intrínsecos. A Col1 tem estatísticas a serem usado pelo otimizador. Nesse cenário, você pode observar cardinalidade imprecisa estimativas e se o SQL Server usa um plano ineficiente. Veja a seguir algumas consultas que têm predicados:
Selecione person_id de quem (email LIKE UPPER (N ' @live. com% '))
Selecione person_id de quem (email = UPPER(N'msft@live.com '))
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".
Resolução
Esse problema foi corrigido nas seguintes atualizações cumulativas do SQL Server:
Sobre atualizações cumulativas do SQL Server:
Cada nova atualização cumulativa do SQL Server contém todos os hotfixes e todas as correções de segurança incluídas na atualização cumulativa anterior. Confira as atualizações cumulativas mais recentes do SQL Server:
Observação Esta correção exige um dos seguindo para entrar em vigor:
-
QUERY_OPTIMIZER_HOTFIXES conjunto de configurações com escopo de banco de dados como ativado
-
Usar a dica de uso ENABLE_QUERY_OPTIMIZER_HOTFIXES
-
Habilitar o sinalizador de rastreamento 4199
Referências
Saiba mais sobre a terminologia que a Microsoft usa para descrever atualizações de software.