আমার দুটি অনুরূপ ক্যোয়ারী রয়েছে যা একই ক্যোয়ারী প্ল্যান উত্পন্ন করে, একটি ক্যোয়ারী প্ল্যান 1316 বার একটি ক্লাস্টারড ইনডেক্স স্ক্যান সম্পাদন করে, অন্যটি এটি 1 বার কার্যকর করে।
দুটি প্রশ্নের মধ্যে একমাত্র পার্থক্য হ'ল ভিন্ন তারিখের মানদণ্ড। দীর্ঘ চলমান ক্যোয়ারী আসলে সংক্ষিপ্ত তারিখের মানদণ্ড এবং কম ডেটা টেনে নিয়ে যায়।
আমি এমন কিছু সূচিগুলি সনাক্ত করেছি যা উভয় প্রশ্নের সাথে সহায়তা করবে, তবে আমি কেবল বুঝতে চাই যে ক্লাস্টারড ইনডেক্স স্ক্যান অপারেটর কেন এমন প্রশ্নের উপর 1316 বার চালাচ্ছে যা কার্যত যেখানে এটি 1 বার কার্যকর হয় তার সমান।
আমি যে পিকে স্ক্যান করা হচ্ছে তার পরিসংখ্যানগুলি পরীক্ষা করেছিলাম এবং সেগুলি অপেক্ষাকৃত আধুনিক।
মূল ক্যোয়ারী:
select distinct FIR_Incident.IncidentID
from FIR_Incident
left join (
select incident_id as exported_incident_id
from postnfirssummary
) exported_incidents on exported_incidents.exported_incident_id = fir_incident.incidentid
where FI_IncidentDate between '2011-06-01 00:00:00.000' and '2011-07-01 00:00:00.000'
and exported_incidents.exported_incident_id is not null
এই পরিকল্পনাটি তৈরি করে:
তারিখের পরিসীমা মানদণ্ড সঙ্কুচিত করার পরে:
select distinct FIR_Incident.IncidentID
from FIR_Incident
left join (
select incident_id as exported_incident_id
from postnfirssummary
) exported_incidents on exported_incidents.exported_incident_id = fir_incident.incidentid
where FI_IncidentDate between '2011-07-01 00:00:00.000' and '2011-07-02 00:00:00.000'
and exported_incidents.exported_incident_id is not null
এই পরিকল্পনাটি তৈরি করে:
FI_IncidentDate between '2011-07-01 00:00:00.000' and '2011-07-02 00:00:00.000'
মাপদণ্ড পূরণ করে এবং তখন থেকেই সেই ব্যাপ্তিতে অসম্পূর্ণ সংখ্যার সন্নিবেশ ঘটেছে। এটি অনুমান করে যে সেই তারিখের জন্য কেবলমাত্র 1.07 মৃত্যুদণ্ডের প্রয়োজন হবে। বাস্তবে আসন্ন 1,316 নয়।