Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

क्या एक INNER JOIN EXISTS से बेहतर प्रदर्शन की पेशकश कर सकता है

सामान्यतया, INNER JOIN और EXISTS अलग चीजें हैं।

पूर्व दोनों तालिकाओं से डुप्लिकेट और कॉलम लौटाता है, बाद वाला एक रिकॉर्ड देता है और, एक विधेय होने के नाते, केवल एक तालिका से रिकॉर्ड लौटाता है।

अगर आप UNIQUE . पर इनर जॉइन करते हैं कॉलम, वे समान प्रदर्शन प्रदर्शित करते हैं।

यदि आप DISTINCT . के साथ किसी रिकॉर्डसेट पर इनर जॉइन करते हैं लागू (डुप्लिकेट से छुटकारा पाने के लिए), EXISTS आमतौर पर तेज़ होता है।

IN और EXISTS खंड (समतुल्य सहसंबंध के साथ) आमतौर पर कई SEMI JOIN में से एक को नियोजित करते हैं एल्गोरिदम जो आमतौर पर DISTINCT . से अधिक कुशल होते हैं एक टेबल पर।

इस लेख को मेरे ब्लॉग में देखें:

  • IN बनाम JOIN बनाम EXISTS


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. डेटाबेस प्रदर्शन निगरानी का उपयोग करके अपने SQL सर्वर को कैसे गति दें

  2. एक फ़ोल्डर से SQL सर्वर में एकाधिक CSV फ़ाइलें आयात करें

  3. SQL सर्वर में FORMAT () द्वारा समर्थित कस्टम न्यूमेरिक फॉर्मेट स्ट्रिंग्स

  4. WHERE क्लॉज में कॉलम एलियास का जिक्र करते हुए

  5. एसक्यूएल सर्वर में पृष्ठ जीवन प्रत्याशा की निगरानी