【解決方法】単純な select * from クエリが何時間も実行されていますが、MS SQL SERVER では結果が得られません。 これを修正するにはどうすればよいですか?

プログラミングQA


私は単純なを実行しています

SQL
select * from table_name

600 レコードがあるテーブルに対するクエリを実行しましたが、何時間も実行され続けましたが、結果は得られませんでした。 最大10のトップ演算子を使用して実行すると、トップ11を指定すると実行され、結果が得られますが、同じ問題が発生します。 他の DB インスタンスにも同じテーブルがあり、実行するとそこに 5000 件を超えるレコードがあります

SQL
select * from table_name

他のインスタンスでもビューが実行されている場合でも、両方のインスタンスのテーブルとビューのロジックに変更はありません。 両方のインスタンスですべてが同じであるにもかかわらず、他のインスタンスと比較してレコード数が少ないにもかかわらず、なぜこのインスタンスでこの問題が発生するのでしょうか? ビューで結果が得られない場合は、パフォーマンスの問題がある可能性があることは理解できますが、テーブル自体は結果を与えません。
解決策を提案し、なぜこれが起こっているのか説明してください。 前もって感謝します。

私が試したこと:

インデックスをチェックし、テーブルの統計を更新し、このクエリに影響を与える可能性のある他のアクティブなトランザクションがあるかどうかを確認しました。 を使って確認しました

SQL
DBCC OPENTRAN

SPID 88がアクティブであると表示されていますが、そのSPIDをチェックすると

SQL
EXEC sp_who2

そのトランザクションは利用できないだけです

コメント

タイトルとURLをコピーしました