Symptômes
Quand vous exécutez une requête dans Microsoft SQL Server 2012 ou SQL Server 2014 et que les conditions suivantes sont remplies, un plan d’exécution sous-optimal est généré dans SQL Server 2012 :
- La requête contient une instruction Case, When, Then et Else.
- L’instruction When a une condition constante qui prend la valeur « false ».
- L’instruction Then contient une clause Select.
Notes
- Dans le plan d’exécution, l’instruction Then est évaluée et comparée à isFalseOrNull(0). Toutefois, l’instruction When prend toujours la valeur « false ».
- Ce problème ne se produit pas dans Microsoft SQL Server 2008 R2
Résolution
Le problème a été résolu pour la première fois dans la mise à jour cumulative suivante de SQL Server.
Mise à jour cumulative 1 pour SQL Server 2014 /en-us/help/2931693
Mise à jour cumulative 7 pour SQL Server 2012 SP1 /en-us/help/2894115
À propos des mises à jour cumulatives pour SQL Server
Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et tous les correctifs de sécurité inclus dans la mise à jour cumulative précédente. Consultez les dernières mises à jour cumulatives pour SQL Server :
- Dernière mise à jour cumulative pour SQL Server 2014
- Dernière mise à jour cumulative pour SQL Server 2012 SP1
État
Microsoft a confirmé qu’il s’agissait d’un problème dans les produits Microsoft répertoriés dans la section « S’applique à ».