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 otimizado é gerado no SQL Server 2012:
-
A consulta contém uma letra Case, quando, thene else .
-
A instrução When tem uma condição constante que é avaliada como "false".
-
A instrução then contém uma cláusula Select .
Observações
-
No plano de execução, a instrução then é avaliada e comparada com 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 primeiro na atualização cumulativa a seguir do SQL Server.
Atualização cumulativa 1 para SQL Server 2014 /en-us/help/2931693
Atualização cumulativa 7 para SQL Server 2012 SP1 /en-us/help/2894115
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:
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".