インデックスのシーク(クラスタ化されていない)が合計実行時間の約93%を占めるクエリがあります。非クラスタ化インデックスのパフォーマンスを向上させるシーク
クエリの実行計画では、インデックスシークの推定行数は1であり、実際の行数は209です。これが問題であるかどうか。
クラスタ化されていないインデックスシークのパフォーマンスを向上させる方法。一般的な答えが役に立つでしょう。
実行計画:
そして次は、私が最初にすべての関係者の統計情報を更新する時になり、
SELECT TOP 11 DVPR1.IncidentID, DVPR2.IncidentID, Rel.ID, PER1.[LastName], PER1.[FirstName]
FROM
DV_PHPersonalRecord DVPR1
INNER JOIN Relationship Rel
ON Rel.source_Id = DVPR1.RowId
AND Rel.typeCode = 'RPLC'
INNER JOIN DV_PHPersonalRecord DVPR2
ON DVPR2.RowId = Rel.target_Id
INNER JOIN [T_Attribute] (nolock)
ON [T_Attribute].[ActRelationship_ID] = Rel.[ID]
AND [T_Attribute].[name] = 'MergeFlag'
AND ([T_Attribute].[valueString_Code] = 'pending')
INNER JOIN [Person] PER1 (nolock)
ON DVPR1.[PersonDR]=PER1.[RowID]
INNER JOIN [Person] PER2 (nolock)
ON DVPR2.[PersonDR]=PER2.[RowID]
WHERE
DVPR1.TypeDR = 718990
AND
(PER1.[Code_ID] IS NULL OR (PER1.[Code_ID] = '6516'
AND PER1.[OptionsCode_ID] = '6522')
)
AND
(PER2.[Code_ID] IS NULL OR (PER2.[Code_ID] = '6516'
AND PER2.[OptionsCode_ID] = '6522')
)
ORDER BY PER1.[LastName] ASC,
PER1.[FirstName] ASC
クエリにはどのくらいの時間がかかりますか?なぜあなたは問題があると思いますか? – Tomalak
クエリは約14秒かかります...要件は3秒で完了する必要があります –
実行計画とクエリを投稿できますか? –