Sümptomid
Oletagem, et käivitate päringu, mis hõlmab liitumist või koondamist veerust, mis on kaetud nii ühe veeru kui ka mitme veeruga statistika (kus see veerg pole juhtiv veerg). Kui kasutate SQL Server 2016-i vaike-hindaja (CE), võib see alahinnata arvu eri ridadest. See viib läbi optimaalse päringu täitmise lepingu (nt: madal hinnang võib tekitada ebapiisavat mälu, mis annab ebapiisavat teavet Hash-operaatori jaoks, mis põhjustab päringut tempdb).
Olek
Microsoft on kinnitanud, et see probleem esineb jaotises "kehtib järgmiste toodete kohta" loetletud Microsofti toodetes.
Lahendus
See probleem on lahendatud järgmises SQL serveri koondvärskenduses:
Märkus. Selle paranduse jõustumiseks peate lubama päringu optimeerija käigultparandused jälituslipp (TF) 4199 või vastava andmebaasi ulatuse konfigureerimine või päringu vihje.
SQL serveri kumulatiivsed värskendused:
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.
Lahendus
Selle probleemi lahendamiseks saate lisada järgmise päringu vihje.
KASUTADA VIHJE ("FORCE_LEGACY_CARDINALITY_ESTIMATION")
Viited
Siit leiate terminologyteavet selle kohta ,mida Microsoft kasutab tarkvaravärskenduste kirjeldamiseks.