एसक्यूएल में तीन टेबल्स में शामिल हों

Esakyu Ela Mem Tina Tebalsa Mem Samila Hom



संबंधपरक डेटाबेस की प्रमुख विशेषताओं में से एक संबंधित डेटा को 'टेबल' नामक विभिन्न घटकों में अलग करने की क्षमता है। अन्य डेटाबेसों के विपरीत, संबंधपरक डेटाबेसों को विभिन्न तालिकाओं से डेटा एकत्र करने और परिणामों को अर्थपूर्ण डेटा में संयोजित करने की आवश्यकता होती है।

यहीं पर जुड़ने की कार्यक्षमता काम आती है। रिलेशनल डेटाबेस में, जुड़ना सबसे आम ऑपरेशनों में से एक है जो आपको डेटा को दो या दो से अधिक तालिकाओं से एक एकल परिणाम सेट में संयोजित करने की अनुमति देता है।







हालाँकि, आप पा सकते हैं कि अधिकांश जोड़ केवल दो तालिकाओं को कवर करते हैं। हालाँकि, जुड़ने को जल्दी से तीन या अधिक तालिकाओं तक बढ़ाया जा सकता है। हालांकि तीन से अधिक तालिकाओं के साथ काम करते समय सीटीई में देखना अधिक कुशल हो सकता है, लेकिन जब तीन तालिकाओं की बात आती है तो जुड़ना बहुत कुशल और तेज़ हो सकता है।



इस ट्यूटोरियल में, हम उन चरणों के बारे में जानेंगे जिनकी आपको SQL में तीन तालिकाओं से जुड़ने के लिए आवश्यकता होती है।



शुरू करना

शुरू करने से पहले, हम मानते हैं कि आपके पास स्तंभों के साथ तीन सरल तालिकाएँ हैं जैसा कि निम्नलिखित में दिखाया गया है:





तालिका नंबर एक:
पहचान | नाम | आयु

तालिका 2:
पहचान | शहर | देश

टेबल तीन:
पहचान | वेतन | पद


यह लेआउट हमें जल्दी से समझने की अनुमति देता है कि तीन तालिकाओं में शामिल होना कैसे काम करता है और हम SQL क्वेरी का उपयोग करके उन्हें कैसे कॉन्फ़िगर कर सकते हैं।

एसक्यूएल में तीन टेबल्स में शामिल हों

SQL में कोई भी ज्वाइन करते समय, मुख्य घटक प्रत्येक तालिका में एक सामान्य कॉलम या कॉलम के एक सेट की पहचान करके शुरू होता है, जिसमें आपको शामिल होने की आवश्यकता होती है। फिर आप तालिका को एक साथ लिंक करने के लिए इन साझा किए गए स्तंभों का उपयोग कर सकते हैं, जिससे SQL को समझदारी और कुशलता से डेटा की व्याख्या और विलय करने की अनुमति मिलती है।



हालाँकि SQL में विभिन्न प्रकार के जुड़ाव हैं, लेकिन मुख्य घटक तालिकाओं में समानता है।

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

पिछली तालिकाओं के मामले में, हम तीन तालिकाओं पर एक आंतरिक जुड़ाव कर सकते हैं जैसा कि निम्नलिखित क्वेरी में दिखाया गया है:

तालिका1.नाम, तालिका2.शहर, तालिका3.वेतन चुनें
तालिका 1 से
इनर जॉइन टेबल 2
ऑन टेबल1.आईडी = टेबल2.आईडी
इनर जॉइन टेबल 3
ऑन टेबल2.आईडी = टेबल3.आईडी;


आइए पिछली क्वेरी को चरण दर चरण एक्सप्लोर करें:

    1. पहला सेलेक्ट स्टेटमेंट है जो हमें उन कॉलमों का चयन करने की अनुमति देता है जिन्हें हम परिणाम सेट में शामिल करना चाहते हैं। इस मामले में, हम तालिका 1 से नाम कॉलम, तालिका 2 से शहर कॉलम और तालिका 3 से वेतन कॉलम में रूचि रखते हैं।
    2. FROM स्टेटमेंट का उपयोग करते हुए, हम उन लक्ष्य तालिकाओं को निर्दिष्ट करते हैं जिनसे हम सेट कॉलम प्राप्त करना चाहते हैं। इस मामले में, हम तालिका 1 से ला रहे हैं।
    3. इसके बाद INNER JOIN क्लॉज आता है। हम तालिका 1 को तालिका 2 के साथ जोड़ने के लिए इस खंड का उपयोग करते हैं। हम दो तालिकाओं को जोड़ने वाली स्थिति को निर्दिष्ट करने के लिए ON खंड का भी उपयोग करते हैं, जो इस मामले में आईडी स्तंभ है।
    4. दूसरा इनर जॉइन हमें टेबल 3 के साथ पहले जॉइन से परिणाम सेट में शामिल होने की अनुमति देता है। ऑन क्लॉज का उपयोग करके, हम एसक्यूएल को बताते हैं कि हम आईडी कॉलम के आधार पर परिणाम सेट और टेबल 3 में शामिल होना चाहते हैं।
    5. सभी तीन तालिकाओं से प्राप्त परिणाम चयनित स्तंभों में शामिल किया गया है।

व्यावहारिक उदाहरण:

हालाँकि पिछला उदाहरण दर्शाता है कि तीन तालिकाओं को कैसे जोड़ा जाए, आइए एक अधिक व्यावहारिक उदाहरण लेते हैं और सकीला डेटाबेस का उपयोग करते हैं।

हम इस मामले में फिल्म, रेंटल और इन्वेंट्री टेबल से जुड़ते हैं। प्रश्न इस प्रकार है:

रेंटल.रेंटल_आईडी, रेंटल.रेंटल_डेट, फिल्म.टाइटल, इन्वेंट्री.इन्वेंटरी_आईडी चुनें
किराये से
जॉइन इन्वेंट्री ऑन रेंटल.इन्वेंटरी_आईडी = इन्वेंट्री.इन्वेंटरी_आईडी
इन्वेंट्री पर फिल्म में शामिल हों। फिल्म_आईडी = फिल्म.फिल्म_आईडी
जहां फिल्म शीर्षक = 'सनसेट रेसर' ;


व्याख्या:

    1. इस मामले में, हम रेंटल टेबल से रेंटल_आईडी, रेंटल_डेट और इन्वेंट्री_आईडी कॉलम चुनने के लिए सेलेक्ट स्टेटमेंट का उपयोग करते हैं।
    2. पहला जॉइन क्लॉज इन्वेंट्री_आईडी कॉलम का उपयोग करके रेंटल टेबल को इन्वेंट्री टेबल से जोड़ता है।
    3. दूसरा जॉइन क्लॉज फिल्म_आईडी कॉलम का उपयोग करके पहले जॉइन से फिल्म तालिका में परिणाम सेट में शामिल होता है।
    4. अंत में, हम केवल लक्ष्य शीर्षक को शामिल करने के लिए परिणाम सेट को फ़िल्टर करने के लिए WHERE क्लॉज का उपयोग करते हैं।

परिणामी तालिका इस प्रकार है:

निष्कर्ष

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