Symptomen
Wanneer u een query uitvoert op een weergave in Microsoft SQL Server 2014 of 2016, duurt het mogelijk veel langer om de bewerking uit te voeren voor de uitvoering in SQL Server 2008 R2.
Wanneer u een query uitvoert waarbij UNION ALL en een rijnaam (zoals TOP N-component, FAST N of EXISTing) worden gebruikt, is het mogelijk dat de query langzamer wordt uitgevoerd in SQL Server 2014 of nieuwere versies als u deze vergelijkt met SQL Server 2008 R2.
Oorzaak
In SQL Server 2008 R2 wijzigt de query Optimizer de volgorde van de verschillende delen onder UNION ALL indien een nieuwe doelgroep is, zodat het voordeligste-deel eerst begint. Hiermee kunt u de query eerder uitvoeren als de gewenste onderdelen nodig zijn voor het maken van een lang aantal rijen, zonder dat u meer dure delen hoeft uit te voeren. Deze herschikking doet zich niet voor in latere versies van SQL Server.
Oplossing
Dit probleem is opgelost in de volgende cumulatieve update voor SQL Server:
Cumulatieve update 7 voor SQL Server 2016 RTM
Cumulatieve update 4 voor SQL Server 2016 SP1
Cumulatieve update 6 voor SQL Server 2014 SP2
Opmerking U moet de query Optimiser voor dit probleem inschakelen.
Raadpleeg de volgende koppelingen voor meer informatie over query Optimizer en traceer vlaggen:
Elke nieuwe cumulatieve update voor SQL Server bevat alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige cumulatieve update. Bekijk de nieuwste cumulatieve updates voor SQL Server:
Status
Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.
Verwijzingen
Lees meer over de terminologiedie door Microsoft wordt gebruikt om software-updates te beschrijven.