
तुलना चार्ट
तुलना के लिए आधार | बाईं ओर का बाहरी जोड़ | राइट आउटर जॉइन करें | पूर्ण बाहरी सम्मिलित हों |
---|---|---|---|
बुनियादी | परिणाम में बाईं तालिका के सभी टुपल्स बने हुए हैं। | सही तालिका के सभी टुपल्स परिणाम में रहते हैं। | परिणाम में बाईं और साथ ही दाईं ओर के सभी ट्यूपल्स बने हुए हैं। |
पूर्ण विस्तार | बाएँ तालिका के ट्यूपल्स जिसमें राइट टेबल में मेल खाने वाला टपल नहीं है, उन्हें राइट टेबल की विशेषताओं के लिए NULL मान के साथ बढ़ाया जाता है। | दाएं तालिका के ट्यूपल्स जिसमें बाईं तालिका में एक मिलान ट्यूपल नहीं है, बाईं तालिका की विशेषताओं के लिए NULL मान के साथ विस्तारित हैं। | बाएँ और साथ ही साथ दाईं तालिका में क्रमशः मेल खाने वाले tuples के दाएँ और बाएँ तालिका की विशेषताओं के लिए NULL मान के साथ विस्तारित किए गए हैं। |
लेफ्ट आउटर जॉइन की परिभाषा
मान लीजिए, हमारे पास " Table_A Left Outer Join Table_B " है। तो Table_A हमारी बाईं टेबल है क्योंकि यह लेफ्ट आउटर जॉइन ऑपरेशन के बाईं ओर दिखाई देता है और Table_B हमारी राइट टेबल है।
प्रारंभ में, आंतरिक जुड़ाव Table_A और Table_B पर लागू किया जाएगा जो तालिका ए और बी से सभी मिलान ट्यूपल लौटाएगा।
इसके बाद, यह Table_A से सभी टुपल्स लौटाएगा जिनके पास टेबल_ में मेल खाने वाला टपल नहीं है। ऐसा है कि, परिणामी टुपल्स को सही तालिका की विशेषताओं के लिए NULL मानों के साथ गद्देदार किया जाएगा।
इसलिए, लेफ्ट आउटर जॉइन से प्राप्त परिणाम लेफ्ट टेबल से सभी ट्यूपल्स को बनाए रखता है और राइट टेबल से केवल ट्यूपल मेल खाता है।
आइए एक उदाहरण के साथ लेफ्ट आउटर में चर्चा करें; हमारे पास नीचे दो टेबल हैं, स्टूडेंट टेबल और डिपार्टमेंट टेबल।

अब, हम छात्र और विभाग की मेज पर लेफ्ट आउटर जॉइन को लागू करेंगे।
छात्र बाएँ विभाग विभाग से * का चयन करें
छात्र पर। छात्र_आईडी = विभाग
उपरोक्त क्वेरी में, तालिका छात्र बाईं तालिका है और तालिका विभाग सही तालिका है। इसलिए लेफ्ट आउटर जॉइन के अनुसार, रिजल्ट में स्टूडेंट टेबल से सभी ट्यूपल्स होने चाहिए, और डिपार्टमेंट टेबल से केवल ट्यूपल्स का मिलान करना चाहिए।

राइट आउटर जॉइन की परिभाषा
मान लीजिए कि हमारे पास, " Table_A राईट आउटर Join Table Table " है। इसलिए Table_A हमारी बाईं तालिका है क्योंकि यह दाईं ओर से जुड़ने के ऑपरेशन के बाईं ओर दिखाई देती है और Table_B हमारी दाईं तालिका है।
लेफ्ट आउटर जॉइन की तरह, शुरू में, इनर जॉइन टेबल_ए और टेबल_ पर लागू किया जाएगा जो टेबल ए और बी से सभी मिलान ट्यूपल को लौटा देगा।
इसके बाद, यह टेबल_ से सभी ट्यूपलों को लौटा देगा जिनके पास टेबल_ए में एक मिलान ट्यूपल नहीं है। ऐसा है कि परिणामी टुपल्स को बाईं तालिका की विशेषताओं के लिए NULL मानों के साथ गद्देदार किया जाएगा।
इसलिए, सही बाहरी जुड़ने से प्राप्त परिणाम सही तालिका से सभी ट्यूपल्स को बरकरार रखता है और बाएं टेबल से केवल मिलान ट्यूपल्स।
आइए एक उदाहरण के साथ राइट आउटर जॉइन पर चर्चा करें; ऊपर हमारे पास दो टेबल हैं, स्टूडेंट टेबल और डिपार्टमेंट टेबल।
अब, हम स्टूडेंट टेबल और डिपार्टमेंट टेबल पर राईट आउटर जॉइन करेंगे।
* छात्र राइट जॉइन विभाग से * का चयन करें
छात्र पर। छात्र_आईडी = विभाग
उपरोक्त क्वेरी में, छात्र तालिका हमारी बाईं तालिका है और विभाग तालिका हमारी सही तालिका है। राइट आउटर जॉइन ऑपरेशन के अनुसार, परिणाम में डिपार्टमेंट टेबल से सभी ट्यूपल्स और स्टूडेंट टेबल से केवल मिलान ट्यूपल शामिल होना चाहिए।

पूर्ण बाहरी की परिभाषा में शामिल हों
मान लीजिए कि हमारे पास, " Table_A पूर्ण बाहरी तालिका Table_B में शामिल हों "। तो Table_A हमारी बाईं तालिका है क्योंकि यह पूर्ण बाहरी जुड़ाव ऑपरेशन के बाईं ओर दिखाई देता है और Table_B हमारी दाईं तालिका है।
Full Outer Join, Left Outer Join और Right Outer Join दोनों का संयोजन है। प्रारंभ में, यह दोनों टेबल से मिलान ट्यूप को पुनः प्राप्त करने के लिए Table_A और Table_B पर आंतरिक रूप से जुड़ता है। फिर यह NULL के साथ Table_A के उन tuples का विस्तार करता है, जिनमें Table_B में एक मिलान tuple नहीं है। इसके अलावा, यह उन तालिकाओं को तालिका_ से बढ़ाता है, जिनके पास NULL के साथ होते हैं, जिनके पास Table_A में एक मिलान ट्यूपल नहीं है।
इसलिए, पूरा बाहरी जोड़ बाईं ओर से सभी तालिकाओं के साथ-साथ दाईं तालिका के साथ-साथ दोनों तालिकाओं के मिलान वाले tuples को बनाए रखता है।
आइए हम एक उदाहरण के साथ पूर्ण बाहरी चर्चा करें; हमारे पास दो टेबल ऊपर हैं, स्टूडेंट टेबल और डिपार्टमेंट टेबल।
अब, हम स्टूडेंट टेबल और डिपार्टमेंट टेबल पर फुल आउटर जॉइन करेंगे।
छात्र पूर्ण जोत विभाग से * का चयन करें
छात्र पर। छात्र_आईडी = विभाग
उपरोक्त क्वेरी में, छात्र तालिका हमारी बाईं तालिका है और विभाग तालिका हमारी दाईं तालिका है। पूर्ण बाहरी जुड़ाव के अनुसार, परिणाम में दोनों तालिकाओं से सभी tuples शामिल होना चाहिए।

बाएँ, दाएँ और पूर्ण बाहरी के बीच मुख्य अंतर
- लेफ्ट आउटर जॉइन के परिणाम में लेफ्ट टेबल के सभी ट्यूपल हैं। इसी तरह, राईट आउटर जॉइन के परिणाम में दायें टेबल के सभी ट्यूपल हैं। और फुल आउटर जॉइन के परिणाम में लेफ्ट और राइट टेबल दोनों से सभी ट्यूपल हैं।
- लेफ्ट आउटर जॉइन में, लेफ्ट टेबल के ट्यूपल जिनके पास राइट टेबल में मैचिंग टुपल नहीं है, उन्हें राइट टेबल की विशेषताओं के लिए नल मान के साथ बढ़ाया जाता है। ओपोजिट राइट आउटर जॉइन का मामला है। और फुल आउटर जॉइन में, लेफ्ट और राईट टेबल से ट्यूपल्स जिनमें क्रमशः राईट और लेफ्ट टेबल में मैचिंग टुपल्स नहीं होते हैं, उन्हें क्रमशः राइट और लेफ्ट टेबल की विशेषताओं के लिए NULL के साथ बढ़ाया जाता है।
निष्कर्ष:
क्वेरी में तालिका नामों की स्थिति का ध्यान रखें। जैसा कि क्वेरी में तालिका के नाम की स्थिति तय करती है कि क्या तालिका को बाईं तालिका या दाईं तालिका माना जाएगा।