2017-07-18 11 views
-4

私はいくつかの高価なクエリを見つけアクティビティモニタをチェックし、確認しながらそのための実行計画がここexecution plan最近の高価なクエリ

を取り付けられている。それは、インデックスシークを示しているが、それが意味何をするか66%ですか?どのように高価なクエリになった? 誰か助けてください

+0

クエリの実行時間はどのくらいですか? –

+0

どのdbmsを使用していますか? – jarlh

+0

MS SQL Server 2012 .... – Sanal

答えて

0

あなたは結果をよりcosltierにするために2つのサブクエリを使用しています。サブクエリをジョインまたは一時テーブルに置き換えることができます。

また、VehicleSchedulesテーブルのSchedStartTimeとトリップテーブルのvehicleScheduleidカラムのインデックスを作成することもできます。

注:索引付けは、DML問合せに影響します。

select top 1 @v_CancelScheduleid= VehicleScheduleid 
from VehicleSchedules WITH (NOLOCK) 
where [email protected]_VehicleId 
and vehicleScheduleid not in (select isnull(vehicleScheduleid,0) from trip WITH (NOLOCK)) and SchedStartTime<(select SchedStartTime from VehicleSchedules WITH (NOLOCK) where [email protected]) order by SchedStartTime desc 
関連する問題