डीबीएमएस जॉइन: थीटा, इनर, आउटर, इक्वी जॉइन के प्रकार

⚡ स्मार्ट सारांश

डेटाबेस मैनेजमेंट सिस्टम (DBMS) में जॉइन एक बाइनरी ऑपरेशन है जो दो या दो से अधिक तालिकाओं की पंक्तियों को उनकी प्राथमिक और विदेशी कुंजियों का उपयोग करके जोड़ता है। जॉइन को इनर जॉइन में विभाजित किया जाता है, जो केवल मेल खाने वाली पंक्तियों को लौटाता है, और आउटर जॉइन में, जो बेमेल पंक्तियों को रखता है और रिक्त स्थानों को नल मान से भरता है।

  • 🔗 मूल मकसद: एक जॉइन संबंधित तालिकाओं को एक जॉइन शर्त के आधार पर एक एकल परिणाम सेट में मर्ज करता है।
  • 🎯 आंतरिक रूप से जुड़ा: यह केवल उन पंक्तियों को लौटाता है जो दोनों तालिकाओं में शर्त को पूरा करती हैं; यह डिफ़ॉल्ट जॉइन प्रकार है।
  • 📐 थीटा और इक्वीआई: थीटा जॉइन में किसी भी तुलना ऑपरेटर का उपयोग किया जा सकता है; जबकि इक्वीआई जॉइन में केवल समानता ऑपरेटर का उपयोग किया जाता है।
  • 🔄 प्राकृतिक जुड़ाव: समान नाम वाले एट्रिब्यूट्स का मिलान करता है और डुप्लिकेट कॉलम को हटा देता है।
  • ⬅️ बाईं ओर का बाहरी जोड़: यह बाईं ओर की तालिका की प्रत्येक पंक्ति को रखता है, और जहां दाईं ओर कोई मिलान नहीं होता वहां खाली मान भरता है।
  • ➡️ दायां बाहरी शामिल हों: यह दाईं ओर की तालिका की प्रत्येक पंक्ति को रखता है, और जहां बाईं ओर कोई मिलान नहीं होता वहां खाली मान भरता है।
  • 🌐 पूर्ण बाहरी जोड़: मिलान हो या न हो, दोनों तालिकाओं की सभी पंक्तियों को रखता है।

डीबीएमएस में जोड़ बाएँ दाएँ

डेटाबेस मैनेजमेंट सिस्टम (DBMS) में जॉइन क्या होता है?

DBMS में शामिल हों यह एक बाइनरी ऑपरेशन है जो आपको एक ही स्टेटमेंट में जॉइन प्रोडक्ट और सिलेक्शन को संयोजित करने की अनुमति देता है। जॉइन कंडीशन बनाने का उद्देश्य दो या दो से अधिक तालिकाओं के डेटा को संयोजित करना है। तालिकाओं को उनकी प्राथमिक कुंजियों का उपयोग करके संबद्ध किया जाता है। विदेशी कुंजी.

जुड़ने के प्रकार

डीबीएमएस में मुख्यतः दो प्रकार के जॉइन होते हैं:

  1. आंतरिक जोड़: थीटा, प्राकृतिक, EQUI
  2. बाहरी जोड़: बाएँ, दाएँ, पूर्ण

नीचे दी गई तालिका में सभी प्रकार के जॉइन का पूर्वावलोकन दिया गया है, और प्रत्येक को एक उदाहरण सहित समझाया गया है।

जुडें रिटर्न बेमेल पंक्तियाँ
आंतरिक (थीटा / इक्वी / प्राकृतिक) दोनों तालिकाओं में शर्त से मेल खाने वाली पंक्तियाँ गिरा
बायां बाहरी सभी बाएँ पंक्तियाँ और मिलान बाईं ओर से रखा गया, दाईं ओर खाली
दायां बाहरी सभी सही पंक्तियाँ और मिलान दाईं ओर से रखा गया, बाईं ओर शून्य
पूर्ण बाहरी दोनों तालिकाओं की सभी पंक्तियाँ दोनों से रखा गया, जहां अनुपस्थित है वहां शून्य।

आंतरिक रूप से जुड़ा

आंतरिक रूप से जुड़ा इसका उपयोग दोनों तालिकाओं से उन पंक्तियों को लौटाने के लिए किया जाता है जो दी गई शर्त को पूरा करती हैं। यह सबसे व्यापक रूप से उपयोग किया जाने वाला जॉइन ऑपरेशन है और इसे डिफ़ॉल्ट जॉइन प्रकार माना जा सकता है।

इनर जॉइन, या इक्विजॉइन, एक कंपैरेटर-आधारित जॉइन है जो जॉइन प्रेडिकेट में समानता तुलनाओं का उपयोग करता है। हालांकि, यदि आप ">" जैसे अन्य तुलना ऑपरेटरों का उपयोग करते हैं, तो इसे इक्विजॉइन नहीं कहा जा सकता है। इनर जॉइन को आगे तीन उपप्रकारों में विभाजित किया गया है:

  • थीटा जॉइन
  • प्राकृतिक जुड़ाव
  • EQUI में शामिल हों

थीटा जॉइन

थीटा जॉइन यह आपको थीटा द्वारा दर्शाई गई शर्त के आधार पर दो तालिकाओं को मर्ज करने की अनुमति देता है। थीटा जॉइन सभी तुलना ऑपरेटरों के लिए काम करता है। इसे प्रतीक द्वारा दर्शाया जाता है। θJOIN ऑपरेशन के सामान्य मामले को थीटा जॉइन कहा जाता है।

सिंटेक्स:

A ⋈θ B

थीटा जॉइन चयन मानदंड में किसी भी शर्त का उपयोग कर सकता है।

निम्नलिखित तालिका पर विचार करें।

टेबल ए टेबल बी
स्तंभ 1 स्तंभ 2 स्तंभ 1 स्तंभ 2
1 1 1 1
1 2 1 3

उदाहरण के लिए:

A ⋈ A.column 2 > B.column 2 (B)
A ⋈ A.स्तंभ 2 > B.स्तंभ 2 (B)
स्तंभ 1 स्तंभ 2
1 2

EQUI जॉइन करें

EQUI जॉइन करें यह तब किया जाता है जब थीटा जॉइन केवल तुल्यता शर्त का उपयोग करता है। EQUI जॉइन एक में कुशलतापूर्वक लागू करने के लिए सबसे कठिन ऑपरेशन है। आरडीबीएमएसऔर यही एक कारण है कि आरडीबीएमएस में प्रदर्शन संबंधी समस्याएं हो सकती हैं।

उदाहरण के लिए:

A ⋈ A.column 2 = B.column 2 (B)
A ⋈ A.स्तंभ 2 = B.स्तंभ 2 (B)
स्तंभ 1 स्तंभ 2
1 1

प्राकृतिक जोड़ (⋈)

प्राकृतिक जुड़ाव इसमें किसी तुलना ऑपरेटर का उपयोग नहीं किया जाता है। इस प्रकार के जॉइन में, एट्रिब्यूट्स का नाम और डोमेन समान होना चाहिए। नेचुरल जॉइन में, दोनों रिलेशंस के बीच कम से कम एक कॉमन एट्रिब्यूट होना चाहिए।

यह उन विशेषताओं का चयन करता है जो दोनों संबंधों में दिखाई देती हैं और उनमें समानता स्थापित करती हैं, और दोहराई गई विशेषताओं को हटा देता है।

उदाहरण: निम्नलिखित दो तालिकाओं पर विचार करें।

C
में चौकोर
2 4
3 9
D
में घन
2 8
3 18
C ⋈ D
सी ⋈ डी
में चौकोर घन
2 4 8
3 9 18

बाहरी सम्मिलित हों

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

  • बाईं ओर का बाहरी जोड़
  • राइट आउटर जॉइन करें
  • पूर्ण बाहरी सम्मिलित हों

बायाँ बाहरी जोड़ (A ⟕ B)

बाईं ओर का बाहरी जोड़ यह फ़ंक्शन बाईं ओर स्थित तालिका की सभी पंक्तियों को लौटाता है, भले ही दाईं ओर स्थित तालिका में कोई मेल खाने वाली पंक्तियाँ न मिलें। जब दाईं ओर कोई मेल खाने वाला रिकॉर्ड नहीं मिलता है, तो null लौटाया जाता है।

बाईं ओर का बाहरी जोड़

निम्नलिखित दो तालिकाओं पर विचार करें।

A
में चौकोर
2 4
3 9
4 16
B
में घन
2 8
3 18
5 75
A Left Outer Join B
ए ⟕ बी
में चौकोर घन
2 4 8
3 9 18
4 16 -

दायां बाह्य जोड़ (A ⟖ B)

राइट आउटर जॉइन करें यह दाईं ओर स्थित तालिका के सभी कॉलम लौटाता है, भले ही बाईं ओर स्थित तालिका में कोई मेल खाने वाली पंक्तियाँ न मिलें। यदि बाईं ओर कोई मेल नहीं मिलता है, तो null लौटाया जाता है। राइट आउटर जॉइन, लेफ्ट जॉइन का विपरीत होता है।

राइट आउटर जॉइन करें

A Right Outer Join B
ए ⟖ बी
में घन चौकोर
2 8 4
3 18 9
5 75 -

पूर्ण बाह्य जोड़ (A ⟗ B)

में पूर्ण बाहरी सम्मिलित हों, दोनों संबंधों से सभी ट्यूपल परिणाम में शामिल किए जाते हैं, मिलान की स्थिति के बावजूद।

उदाहरण:

A Full Outer Join B
ए ⟗ बी
में चौकोर घन
2 4 8
3 9 18
4 16 -
5 - 75

अक्सर पूछे जाने वाले प्रश्न

इनर जॉइन केवल उन्हीं पंक्तियों को लौटाता है जो दोनों तालिकाओं में मेल खाती हैं। आउटर जॉइन दोनों तालिकाओं में से किसी एक या दोनों से मेल न खाने वाली पंक्तियों को भी रखता है, और खाली स्थान को नल मान से भर देता है।

थीटा जॉइन में किसी भी तुलना ऑपरेटर का उपयोग किया जा सकता है, जैसे कि 'से बड़ा' या 'से छोटा'। इक्वीआई जॉइन एक थीटा जॉइन है जो समानता ऑपरेटर तक सीमित है, इसलिए यह केवल समान मानों से मेल खाता है।

दोनों ही समानता के आधार पर मिलान करते हैं, लेकिन नेचुरल जॉइन समान नाम वाले कॉलमों पर स्वतः मिलान करता है और डुप्लिकेट कॉलम को हटा देता है। इक्वीआई जॉइन शर्त को स्पष्ट रूप से निर्दिष्ट करता है और दोनों कॉलमों को बनाए रखता है।

जी हाँ। दिए गए स्कीमा और प्रश्न के आधार पर, AI जॉइन टाइप और कीज़ चुन सकता है, उदाहरण के लिए बिना ऑर्डर वाले ग्राहकों को रखने के लिए लेफ्ट जॉइन। परिणाम की पुष्टि अवश्य करें, क्योंकि गलत जॉइन से पंक्तियों की संख्या बदल जाती है।

हां। एआई यह पता लगा सकता है कि एक तरफ जॉइन कुंजी अद्वितीय नहीं है, जिससे कई-से-कई का विस्फोट हो रहा है, और एक शर्त जोड़ने या पहले एकत्र करने का सुझाव दे सकता है ताकि प्रत्येक मिलान को एक बार गिना जाए।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: