Platí pro
SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

Příznaky

Dotaz může běžet pomalu, pokud jsou splněné následující podmínky:

  • Dotaz používá agregace, například Seskupit podle.

  • SQL Server používá agregační funkci hash v plánu dotazu.

  • Odhadovaný počet jedinečných hodnot je výrazně nižší než skutečný počet jedinečných hodnot agregace.

Když nastane tento problém, zobrazí se v případě, že provádíte Profiler nebo rozšířené sledování událostí, událost s výstrahou hash.

Příčina

K tomuto problému dochází, protože SQL Server vrátí odhad požadované velikosti paměti. Výsledkem je intermiedate výsledků v databázi tempdb.

Řešení

Tento problém byl poprvé opraven následující kumulativní aktualizací SQL serveru:

PoznámkaAbyste mohli aktivovat tuto opravu, musíte povolit příznak trasování 9410.

Každá nová kumulativní aktualizace pro SQL Server obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí kumulativní aktualizace. Doporučujeme stáhnout a nainstalovat nejnovější kumulativní aktualizace pro SQL Server:

Odkazy

Informace o terminologii používané společností Microsoft k popisu aktualizací softwaru.

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.