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

इन दो जॉइनिंग टेबल दृष्टिकोणों के बीच अंतर?

सिंटैक्स के अलावा, छोटे स्निपेट के लिए, वे बिल्कुल वही काम करते हैं। लेकिन यदि संभव हो तो, हमेशा एएनएसआई-जॉइन का उपयोग करके नए प्रश्न लिखें।

शब्दार्थ के लिए, अल्पविराम संकेतन का उपयोग दो तालिकाओं के बीच एक कार्टेशियन उत्पाद का उत्पादन करने के लिए किया जाता है, जिसका अर्थ है तालिका ए से सभी अभिलेखों का एक मैट्रिक्स तालिका बी से सभी रिकॉर्ड के साथ उत्पन्न होता है, इसलिए क्रमशः 4 और 6 रिकॉर्ड वाली दो तालिकाएं 24 रिकॉर्ड बनाती हैं। WHERE क्लॉज का उपयोग करके, आप इस कार्टेशियन उत्पाद से वास्तव में इच्छित पंक्तियों को चुन सकते हैं। हालाँकि, MySQL वास्तव में इसका अनुसरण नहीं करता है और इस विशाल मैट्रिक्स को नहीं बनाता है, लेकिन अर्थ की दृष्टि से इसका यही अर्थ है।

जॉइन सिंटैक्स एएनएसआई मानक है जो अधिक स्पष्ट रूप से परिभाषित करता है कि टेबल कैसे इंटरैक्ट करते हैं। ON डालकर JOIN . के आगे क्लॉज , यह स्पष्ट करता है कि दो तालिकाओं को एक साथ क्या जोड़ता है।

कार्यात्मक रूप से, वे आपके दो प्रश्नों के लिए समान प्रदर्शन करेंगे। अंतर तब आता है जब आप अन्य [OUTER] . का उपयोग करना शुरू करते हैं जॉइन प्रकार।

विशेष रूप से MySQL के लिए, कॉमा-नोटेशन में एक अंतर है

<ब्लॉकक्वॉट>

STRAIGHT_JOIN JOIN के समान है, सिवाय इसके कि बाईं तालिका हमेशा दाएँ तालिका से पहले पढ़ी जाती है। इसका उपयोग उन (कुछ) मामलों के लिए किया जा सकता है जिनके लिए जॉइन ऑप्टिमाइज़र तालिकाओं को गलत क्रम में रखता है।

हालांकि, यह बुद्धिमान नहीं होगा इस अंतर पर बैंक को।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL में किसी तालिका के संयोजन को कैसे दिखाएं

  2. MySQL में मार्जिन की गणना कैसे करें

  3. MySQL में सभी दृश्यों को सूचीबद्ध करने के 4 तरीके

  4. MySQL होस्टिंग के साथ ZEIT Now पर WordPress 5 इंस्टाल करना

  5. कॉलम में प्रत्येक विशिष्ट मान की गिनती कैसे प्राप्त करें?