Symptom
När du kör en fråga i Microsoft SQL Server 2012 eller SQL Server 2014 och följande villkor är sanna genereras ett under optimalt körnings abonnemang i SQL Server 2012:
-
Frågan innehåller en Case-, när- ,and Else -instruktion.
-
När -satsen har ett konstant villkor som beräknas till "falskt".
-
Instruktionen sen innehåller en Select -sats.
Kommentarer
-
I körnings planen utvärderas instruktionen och jämförs med isFalseOrNull(0). Men när -uttrycket beräknas alltid till "falskt".
-
Det här problemet uppstår inte i Microsoft SQL Server 2008 R2
Lösning
Problemet är först åtgärdat i den kumulativa uppdateringen av SQL Server.
Kumulativ uppdatering 1 för SQL Server 2014 /en-us/help/2931693
Kumulativ uppdatering 7 för SQL Server 2012 SP1 /en-us/help/2894115
Varje ny kumulativ uppdatering för SQL Server innehåller alla snabb korrigeringar och alla säkerhets korrigeringar som ingick i den föregående kumulativa uppdateringen. Kolla in de senaste kumulativa uppdateringarna för SQL Server:
Status
Microsoft har bekräftat att det här är ett problem i Microsoft-produkterna som nämns i "gäller".