適用先
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)

現象

次の条件が満たされている場合、クエリの実行速度が遅くなることがあります。

  • このクエリでは、 group byなどの集計が使用されます。

  • SQL Server では、クエリプランでハッシュ集計が使用されます。

  • 個別の値の推定数は、集計での実際の値の数よりもずっと小さくなります。

この問題が発生すると、プロファイラーまたは拡張イベントのトレースを行うと、ハッシュ警告イベントが表示されます。

原因

この問題は、SQL Server の過小見積もりで、必要なメモリ許可量が推定されるために発生します。 これにより、intermiedate の結果が tempdb に収まるされます。

解決方法

この問題は、SQL Server の次の累積的な更新プログラムで最初に修正されました。

注:この修正プログラムを有効にするには、トレースフラグ9410を有効にする必要があります。

SQL Server 用の新しい累積更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正が含まれています。 SQL Server の最新の累積的な更新プログラムをダウンロードしてインストールすることをお勧めします。

関連情報

ソフトウェアの更新を説明するために Microsoft が使用する 用語 について説明します。

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。