Microsoft distribuerar Microsoft SQL Server 2008 R2-korrigeringsfiler som en nedladdnings bar fil. Eftersom de här korrigeringarna är kumulativa innehåller alla nya versioner alla snabb korrigeringar och alla säkerhets korrigeringar som ingick med den tidigare versionen av SQL Server 2008 R2.
Symptom
I Microsoft SQL Server 2008 R2 kan du få inkonsekventa resultat när du kör en komplex fråga som använder operatorn Använd . Obs! Du får rätt resultat i det här scenariot om du använder frågetipset Query i en fråga.
Orsak
Det här problemet beror på att Query Optimering väljer en felaktig körnings plan för frågan. Med Query Optimering hanteras Group by predikatet för de flera kolumnerna i en fysisk operator i körnings planen. Men den här operatorn matar bara ut alla de grupperade kolumnerna i utdatalistan och grupperar inte alla de kolumnerna. Därför kan frågan returnera ett felaktigt resultat. Obs! Ett exempel på en fysisk operator är Stream -operatorn. Med Query Optimering skapas till exempel en Group by ColA, ColB- sats internt mot följande tabell:
ColA |
ColB |
---|---|
siffrorna |
siffrorna |
siffrorna |
1 |
Fråge optimeringen kan felaktigt generera en körnings plan som returnerar båda kolumnerna ColA och ColB . De här kolumnerna är grupperade efter kolumnen ColA i utdatalistan. I det här exemplet kan frågan returnera 0 eller 1 i kolumnen ColB om värdena i kolumnen ColA är 0.
Lösning
Kumulativ uppdaterings information
SQL Server 2008 R2
Korrigeringen för det här problemet släpptes först i kumulativ uppdatering 5. Om du vill veta mer om hur du hämtar det här kumulativa uppdaterings paketet för SQL Server 2008 R2 klickar du på följande artikel nummer och läser artikeln i Microsoft Knowledge Base:
2438347 Kumulativt uppdaterings paket 5 för SQL Server 2008 R2 Obs! Eftersom build-versionerna är kumulativa innehåller varje ny korrigerings utgåva alla snabb korrigeringar och alla säkerhets korrigeringar som ingick med föregående version av SQL Server 2008 R2. Vi rekommenderar att du använder den senaste korrigerings versionen som innehåller den här snabb korrigeringen. Om du vill veta mer klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:
981356 SQL Server 2008 R2-versioner som släpptes efter SQL Server 2008 R2 släpptes
Status
Microsoft har bekräftat att det här är ett problem i Microsoft-produkterna som nämns i "gäller".
Mer information
Kontrol lera att du drabbas av det här problemet genom att granska körnings planen för den problematiska frågan och sedan kontrol lera grupp operatorerna. Kontrol lera till exempel den sammanslagna data strömmen, den sammansatta operatorn, den distinkta sorterings operatorn och operator operatören. Om listan med utdatakolumner är längre än listan med grupperade kolumner uppstår det här problemet.
Referenser
Om du vill veta mer om den stegvisa underhålls modellen för SQL Server klickar du på följande artikel nummer och läser artikeln i Microsoft Knowledge Base:
935897 En stegvis underhålls modell är tillgänglig från SQL Server-teamet för att leverera snabb korrigeringar för rapporterade problemOm du vill veta mer om ett namn schema för uppdateringar för SQL Server klickar du på följande artikel nummer och läser artikeln i Microsoft Knowledge Base:
822499Nytt namn schema för program uppdaterings paket för Microsoft SQL ServerMer information om program uppdaterings terminologi får du om du klickar på följande artikel nummer och läser artikeln i Microsoft Knowledge Base:
824684 Beskrivning av den standard terminologi som används för att beskriva Microsoft-programuppdateringar