এসকিউএল একটি ঘোষণামূলক ভাষা, পদ্ধতিগত ভাষা নয়। এটি, আপনি যে ফলাফল চান তা বর্ণনা করতে আপনি একটি এসকিউএল স্টেটমেন্টটি তৈরি করেন। কীভাবে কাজ করবেন তা আপনি এসকিউএল ইঞ্জিনকে বলছেন না।
একটি সাধারণ নিয়ম হিসাবে, এসকিউএল ইঞ্জিন এবং এসকিউএল অপ্টিমাইজারকে সর্বোত্তম ক্যোয়ারী প্ল্যানটি সন্ধান করা ভাল ধারণা। অনেকগুলি ব্যক্তি-বছরের প্রচেষ্ট রয়েছে যা একটি এসকিউএল ইঞ্জিন বিকাশে যায়, তাই ইঞ্জিনিয়াররা তাদের কীভাবে কী করতে হয় তা কী তা করতে দিন।
অবশ্যই, এমন পরিস্থিতি রয়েছে যেখানে ক্যোয়ারী পরিকল্পনাটি অনুকূল নয়। তারপরে আপনি আরও ভাল পারফরম্যান্স পেতে ক্যোরির ইঙ্গিতগুলি ব্যবহার করতে, ক্যোয়ারিকে পুনর্গঠন করতে, পরিসংখ্যান আপডেট করতে, অস্থায়ী টেবিলগুলি ব্যবহার করতে, সূচিপত্রগুলি যুক্ত করতে এবং আরও কিছু করতে চান।
আপনার প্রশ্ন হিসাবে। সিটিই এবং সাবকিউয়ের কার্যক্ষমতা তত্ত্বগতভাবে একই হওয়া উচিত, যেহেতু উভয়ই ক্যোয়ারী অপ্টিমাইজারকে একই তথ্য সরবরাহ করে। একটি পার্থক্য হ'ল একাধিকবার ব্যবহৃত সিটিই সহজেই চিহ্নিত করা যায় এবং একবার গণনা করা যায়। ফলাফলগুলি তখন একাধিকবার সংরক্ষণ করা যায় এবং পড়তে পারে। দুর্ভাগ্যক্রমে, এসকিউএল সার্ভার এই বেসিক অপ্টিমাইজেশান পদ্ধতির সুবিধা গ্রহণ করবে বলে মনে হচ্ছে না (আপনি এটি সাধারণ উপশম নির্মূলকরণ বলতে পারেন)।
অস্থায়ী টেবিলগুলি আলাদা বিষয়, কারণ আপনি কীভাবে ক্যোয়ারি চালানো উচিত সে সম্পর্কে আরও গাইডেন্স প্রদান করছেন। একটি প্রধান পার্থক্য হ'ল অপ্টিমাইজারটি তার ক্যোয়ারী পরিকল্পনাটি স্থাপনের জন্য অস্থায়ী টেবিলের পরিসংখ্যানগুলি ব্যবহার করতে পারে। এর ফলে কর্মক্ষমতা লাভ হতে পারে। এছাড়াও, আপনার যদি জটিল জটিল সিটিই (সাবকোয়ারি) থাকে যা একাধিকবার ব্যবহৃত হয়, তবে এটি অস্থায়ী টেবিলে সংরক্ষণ করা প্রায়শই পারফরম্যান্সের উত্সাহ দেয়। ক্যোয়ারীটি একবারেই কার্যকর করা হয়েছে।
আপনার প্রশ্নের উত্তর হ'ল আপনার প্রত্যাশা করা পারফরম্যান্স পেতে আপনার বিশেষভাবে খেলা উচিত, বিশেষত নিয়মিতভাবে চালানো জটিল প্রশ্নের জন্য। একটি আদর্শ বিশ্বে ক্যোয়ারী অপ্টিমাইজার সঠিক প্রয়োগের পথ খুঁজে পাবে path যদিও এটি প্রায়শই হয়, আপনি আরও ভাল পারফরম্যান্স পাওয়ার উপায় খুঁজে পেতে সক্ষম হতে পারেন।