আমি এসকিউএল সার্ভার ২০১২-তে দুটি ক্যোয়ারির তুলনা করছি best লক্ষ্যটি হ'ল সর্বোত্তম কোয়েরিটি বেছে নেওয়ার সময় কোয়েরি অপ্টিমাইজার থেকে পাওয়া সমস্ত প্রাসঙ্গিক তথ্য ব্যবহার করা । উভয় প্রশ্নের একই ফলাফল উত্পাদন; সমস্ত গ্রাহকদের জন্য সর্বাধিক অর্ডার।
বাফার পুলটি পরিষ্কার করার কাজটি প্রতিটি ক্যোয়ারী নিখরচায় এবং ড্রপক্লেইনবুফার্সের মাধ্যমে কার্যকর করার আগে করা হয়েছিল
নীচে প্রদত্ত তথ্য ব্যবহার করে, কোন কোয়েরিটি ভাল পছন্দ?
-- Query 1 - return the maximum order id for a customer
SELECT orderid, custid
FROM Sales.Orders AS O1
WHERE orderid = (SELECT MAX(O2.orderid)
FROM Sales.Orders AS O2
WHERE O2.custid = O1.custid);
-- Query 2 - return the maximum order id for a customer
SELECT MAX(orderid), custid
FROM Sales.Orders AS O1
group by custid
order by custid
পরিসংখ্যান সময়
ক্যারিয়ার 1 টি স্ট্যাটিকস টাইম: সিপিইউ টাইম = 0 মিমি, অতিক্রান্ত সময় = 24 এমএস
ক্যারিয়ার 2 স্ট্যাটাসটিক্স সময়: সিপিইউ সময় = 0 এমএস, অতিবাহিত সময় = 23 এমএস
পরিসংখ্যান আইও
প্রশ্ন 1 সংখ্যক আইও: সারণী 'আদেশ'। স্ক্যান কাউন্ট 1, লজিকাল রিড 5, ফিজিকাল রিডস 2, রিড-ফরোয়ার্ড রিড 0, লব লজিকাল রিড 0, লব ফিজিকাল 0, লব রিড-ফরোয়ার্ড 0
প্রশ্ন 2 সংখ্যক আইও: সারণী 'আদেশ' ' স্ক্যান কাউন্ট 1, লজিকাল রিডস 4, ফিজিকাল রিডস 1, রিড-ফরোয়ার্ড রিডস 8, লব লজিকাল রিড 0, লব ফিজিকাল 0, লব রিড-ফরোয়ার্ড 0
কার্যকর করার পরিকল্পনা
নির্বাচন করুন বৈশিষ্ট্য ক্যোয়ারী 1
বৈশিষ্ট্য অনুসন্ধান প্রশ্ন 2
উপসংহার:
প্রশ্ন ঘ
- ব্যাচের ব্যয় 48%
- লজিকাল রিডস 5
- শারীরিক পাঠ 2
- পড়ুন-এগিয়ে পড়ুন: 0
- সিপিইউ সময়: 0 মিমি
- অতিবাহিত সময় 24 মিমি
- আনুমানিক সাবট্রি ব্যয়: 0.0050276
- সংকলনসিপিইউ: 2
- সংকলন: 384
- কম্পাইলটাইম: 2
প্রশ্ন 2
- ব্যাচের দাম 52%
- লজিকাল রিডস 4
- শারীরিক পাঠ ১
- পড়ুন-এগিয়ে পড়ুন: 8
- সিপিইউ সময় 0
- অতিবাহিত সময় 23 মিমি
- আনুমানিক সাবট্রি ব্যয়: 0.0054782
- সংকলন সিপিইউ: 0
- সংকলন: 192
- কম্পাইলটাইম: 0
ব্যক্তিগতভাবে, যদিও গ্রাফিক্যাল প্ল্যান অনুযায়ী কোয়েরি 2 এর উচ্চ ব্যাচের ব্যয় বেশি, আমি মনে করি এর আরও কার্যকর যে ক্যোয়ারী 1। কারণ ক্যোরি 2 তে কম লজিক্যাল রিডের প্রয়োজন হয়, কিছুটা কম সময় ব্যয় হয়, সংকলন, সংকলন এবং সংকলন মানগুলি নত করুন। রিড-ফরোয়ার্ড রিডিংগুলি ক্যোয়ারী 2 এর জন্য 8 এবং ক্যোয়ারী 1 এর জন্য 0 হয়।
আপডেট 12:03
ক্লাস্টার্ড সূচক সংজ্ঞা
ALTER TABLE [Sales].[Orders] ADD CONSTRAINT [PK_Orders] PRIMARY KEY CLUSTERED
(
[orderid] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO
নন-ক্লাস্টার্ড ইনডেক্স idx_nc_custid
CREATE NONCLUSTERED INDEX [idx_nc_custid] ON [Sales].[Orders]
(
[custid] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO