सामान्यतया, INNER JOIN
और EXISTS
अलग चीजें हैं।
पूर्व दोनों तालिकाओं से डुप्लिकेट और कॉलम लौटाता है, बाद वाला एक रिकॉर्ड देता है और, एक विधेय होने के नाते, केवल एक तालिका से रिकॉर्ड लौटाता है।
अगर आप UNIQUE
. पर इनर जॉइन करते हैं कॉलम, वे समान प्रदर्शन प्रदर्शित करते हैं।
यदि आप DISTINCT
. के साथ किसी रिकॉर्डसेट पर इनर जॉइन करते हैं लागू (डुप्लिकेट से छुटकारा पाने के लिए), EXISTS
आमतौर पर तेज़ होता है।
IN
और EXISTS
खंड (समतुल्य सहसंबंध के साथ) आमतौर पर कई SEMI JOIN
में से एक को नियोजित करते हैं एल्गोरिदम जो आमतौर पर DISTINCT
. से अधिक कुशल होते हैं एक टेबल पर।
इस लेख को मेरे ब्लॉग में देखें:
- IN बनाम JOIN बनाम EXISTS