2017-05-16 20 views
0

ストアドプロシージャでは、多くの内部結合を使用していましたが、SPを実行すると1時間以上かかります。SQL結合のどのテーブルが実行に時間がかかりますか?

私はある特定のテーブルがこの問題の原因であると仮定しています。

どのテーブルに時間がかかるかを知りたいと思います。

クエリ実行プランを試しましたが、QEP以外のものが必要です。私に提案してください。

+1

に(表2からIDを選択します)B に参加MVCE – TheGameiswar

+1

デバッグヘルプを求める質問(「なぜこのコードは機能していませんか?」)には、目的の動作、特定の問題またはエラー、および質問自体に再現するのに必要な最短コードが含まれている必要があります。明確な問題文がない質問は、他の読者にとって有用ではありません。 – TheGameiswar

+0

実行計画を確認してください。これは、何が起こっているのか、各ステップにかかる時間を教えてくれる唯一のものです。それはまた、*欠落しているインデックスを示唆することもできます –

答えて

0

SQLでの結合の使用には、常に時間がかかります。テーブルに適切なインデックスがあるかどうかを確認します。内部結合選択リストの列のみを指定してください。

Ex。表1 A 、内側から 選択A. *簡単な言葉が投稿xml..inとして使用しているクエリ、関連するテーブルや実行計画を投稿してくださいA.Id = B.Id

+1

これは間違っています。オプティマイザーは、必要な列のみを使用します。サブクエリでは何も得られません。ジョインは「常にもっと時間がかかる」わけではありません。オプティマイザは、論理的に同等である限り、異なる構文(たとえば、JOINとサブクエリ)を持つ問合せに対して、ほとんど同じ時間に同じ実行計画を作成できるほどスマートです。より多くの時間がかかる行を処理しています –

関連する問題