Sintomas
Quando você executa uma consulta no Microsoft SQL Server 2012 ou no SQL Server 2014 e as seguintes condições são verdadeiras, um plano de execução abaixo do ideal é gerado no SQL Server 2012:
- A consulta contém uma instrução Case, When, Then e Else.
- A instrução When tem uma condição constante que é avaliada como "false".
- A instrução Then contém uma cláusula Select.
Anotações
- No plano de execução, a instrução Then é avaliada e comparada a isFalseOrNull(0). No entanto, a instrução When sempre é avaliada como "false".
- Esse problema não ocorre no Microsoft SQL Server 2008 R2
Resolução
O problema foi corrigido pela primeira vez na atualização cumulativa seguinte do SQL Server.
Atualização cumulativa 1 para SQL Server 2014 /pt-br/help/2931693
Atualização cumulativa 7 para SQL Server 2012 SP1 /pt-br/help/2894115
Sobre atualizações cumulativas para o 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 para o SQL Server:
- Atualização cumulativa mais recente do SQL Server 2014
- Atualização cumulativa mais recente do SQL Server 2012 SP1
Status
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".