Sümptomid
Microsoft SQL Server 2014 või 2016 vaate otsimisel võib kuluda palju pikem aeg, kui võrdlete seda SQL Server 2008 R2 täitmisega.
Kui käivitate päringu, mis kasutab kõiki UNIONi ja rea-eesmärki (nt ülemine N-klausel, FAST N või on eesliide), võite märgata, et päringut kasutatakse aeglasemaks SQL Server 2014 või uuemates versioonides, kui võrdlete seda SQL Server 2008 R2-ga.
Põhjus
SQL Server 2008 R2 korral muudab päringu optimeerija eri osade järjestust Liidu all, kui rea eesmärk on olemas, nii et odavaim osa läheb esimesena. See võimaldab päringul varasemat täitmist lõpetada, kui odavamad osad toodavad nõutava arvu ridu, jätkamata enam kalleid osi. Sellist ümberkorraldust ei esine SQL serveri hilisemates versioonides.
Lahendus
See probleem on lahendatud järgmises SQL serveri koondvärskenduses:
Kumulatiivne Update 7 SQL Server 2016 RTM
Kumulatiivne värskendus 4 SQL Server 2016 SP1 jaoks
Kumulatiivne Update 6 SQL Server 2014 SP2 jaoks
Märkus. Selle probleemi jaoks peab olema lubatud päringu optimeerimine.
Query Optimizeri ja jälitamise lippude kohta leiate lisateavet järgmistest linkidest.
SQL Server Query Optimizeri käigultparanduste TF 4199 teeninduse mudel
Iga uus koondvärskenduses SQL Server sisaldab kõiki käigultparandused ja kõik turvaparandusi, mis kuulusid eelmise koondvärskenduse. Vaadake SQL serveri kumulatiivseid värskendusi.
Olek
Microsoft on kinnitanud, et see probleem esineb jaotises "kehtib järgmiste toodete kohta" loetletud Microsofti toodetes.
Viited
Siit leiate teavet selle kohta, mida Microsoftkasutab tarkvaravärskenduste kirjeldamiseks.