Leftouter結合でのインデックスは常にSQL Server 2005でのインデックススキャンです

私はいくつかのテーブルを結合するクエリを持って、最後のテーブルはLEFT JOIN。最後の表 100万行以上があり、実行計画にはテーブルスキャンが表示されます。私は持っています インデックス付き列 結合が行われます。常にインデックススキャンを使用しますが、LEFT JOINをINNER JOINに置き換えると、インデックスシークが使用されます 使用と実行 数秒かかるが、LEFT JOINではテーブルスキャンがあるので、 実行 数分かかります。外部結合を使用してインデックスを無効にしていますか?私を逃した 何か? そのような行動の理由は何ですか? ここに質問があります

Select * 
FROM

     Subjects                  s
    INNER join       Question  q ON q.SubjectID   = s.SubjectID
    INNER JOIN       Answer    c ON a.QestionID   = q.QuestionID
    Left outer JOIN  Cell      c ON c.Question ID = q.QuestionID

Where S.SubjectID =15

There is cluster index on SubjectID in "Subject" table. and there is non-cluster index on questionID in other tables.

溶液: 私は他の方法でそれを試して、今私はセルテーブルのインデックスを求めています。変更されたクエリは次のとおりです。

Select * 
FROM

     Subjects                  s
    INNER join       Question  q ON q.SubjectID   = s.SubjectID
    INNER JOIN       Answer    c ON a.QestionID   = q.QuestionID
    Left outer JOIN  Cell      c ON c.Question ID = q.QuestionID
                                              AND C.QuestionID > 0
                                              AND C.CellKey > 0

Where S.SubjectID =15

このようにして、Cellテーブルで高い選択性を実現しました。 :)

0
@ user999896 - あなたのテーブル定義も表示してください。
追加された 著者 JNK,
...そして実行計画?
追加された 著者 JNK,
私はテーブル定義も尋ねました。 QuestionID はintですか?それはすべてのテーブルで同じですか?
追加された 著者 JNK,
あなたは私たちにクエリとテーブルとインデックスの定義を表示しますか?どのバージョンのSQL Serverを使用していますか?
追加された 著者 automatic,
こんにちは自動、私は質問を編集してください、見てください。ありがとう
追加された 著者 user999896,
件名:SubjectIDのクラスターインデックス..... QuestionKeyのQuestionクラスターインデックスとQuestionIDのNonClusterインデックス.... "Answer"テーブルの場合、AnswerKeyのクラスターインデックスとQuestionIDの非クラスターインデックス.... "Cell "CellIDのテーブルのクラスタインデックスとQuestionIDの非クラスタインデックス
追加された 著者 user999896,
こんにちはJNK、私はあなたがどこで句で見ることができるように、私はSubjectIDを使用して私がインデックスを使用してフィルタリングされた値を与えている、私はCellテーブルにのみ問題があります。 ONセルテーブルにINdexスキャンがあるため
追加された 著者 user999896,
はい、すべてのインデックス列の型はintで、すべてのテーブルで同じです。
追加された 著者 user999896,

1 答え

私はちょうど同じ問題をシミュレートしようとしましたが、代わりにテーブルスキャンがありませんでした.Cellのクラスタードインデックスを使用していましたが、同時にインデックスを強制しようとすると、ここをクリックしてください。インデックスを強制するときの顔ここをご覧ください。お役に立てれば。

0
追加された