SQL Server 2008 を使用して重い SQL クエリを作成しています。クエリが 100 行を処理すると、即座に終了しました。クエリが 5000 行を処理する場合、約 1.1 分かかります。
実際の実行計画を使用して、5000 行を処理している間のパフォーマンスを確認しました。クエリには 18 のサブクエリが含まれており、プランに表示されるクエリ コストの割合が大幅に高くなることはありません (例: 約 0%、2%、5%、7%)。最高は11%です。以下のスクリーンショットは、クエリの最上位のプロセスを示しています。(例: 11% の 94%)
Client Statistic Tool も使用しました。試行 10 は 5000 行を処理する場合を示し、試行 9 は 100 行を処理する場合を示します。
クエリが 5000 行を実行するときに遅いプロセスを示すデータ/詳細を見つけることができる場所 (またはどの SQL Server ツール) を教えてもらえますか?
追加: インデックス、キーが追加されます。実際の exe プランにはコメントがなく、各サブクエリのパーセンテージも高くありません。
「Activity Monitor」では、「Recent Expansive Queries」で 1 つのサブクエリの「Average Duration」が 40000 ミリ秒であることがわかりましたが、実際の計画では、このクエリは総プロセスの 5% のコストしかかからないことが示されています。
ありがとう