PostgreSQL जॉइन क्या हैं?
PostgreSQL JOINs का उपयोग एक से अधिक तालिकाओं से डेटा प्राप्त करने के लिए किया जाता है। JOINs के साथ, हमारे लिए SELECT और JOIN स्टेटमेंट को एक स्टेटमेंट में मिलाना संभव है। एक JOIN स्थिति को स्टेटमेंट में जोड़ा जाता है, और सभी पंक्तियों को पूरा करता है जो शर्तों को पूरा करती हैं।
अलग-अलग तालिकाओं के मूल्यों को सामान्य स्तंभों के आधार पर संयोजित किया जाता है। सामान्य स्तंभ ज्यादातर पहली तालिका में एक प्राथमिक कुंजी और दूसरी तालिका की एक विदेशी कुंजी है।
इस PostgreSQL ट्यूटोरियल में, आप सीखेंगे:
- PostgreSQL जॉइन क्या हैं?
- जोड़ों के प्रकार
- भीतरी जुड़ता है
- थीटा जॉइन
- EQUI जॉइन करें
- प्राकृतिक जुड़ाव
- बाहरी जोड़
- बाईं ओर का बाहरी जोड़
- सही जॉय शामिल हैं
- पूर्ण बाहरी सम्मिलित हों
- PgAdmin का उपयोग करना
- भीतरी जुड़ता है
- थीटा जॉइन
- EQUI जॉइन करें
- प्राकृतिक जुड़ाव
- INNER JOIN (सरल जुड़ाव)
- बाहरी जोड़
- बाईं ओर का बाहरी जोड़
- सही जॉय शामिल हैं
- पूर्ण बाहरी सम्मिलित हों
जोड़ों के प्रकार
PostgreSQL में दो JOIN प्रकार हैं:
- भीतरी जुड़ता है
- बाहरी सम्मिलित हों
भीतरी जुड़ता है
आंतरिक जुड़ाव 3 प्रकार के होते हैं:
- थीटा सम्मिलित हों
- प्राकृतिक जुड़ाव
- एक्वी शामिल हों
थीटा जॉइन
थीटा ज्वाइन एक को दो थीटा में शामिल होने की शर्त के आधार पर दो टेबल से जुड़ने की अनुमति देता है। थीटा सभी तुलना ऑपरेटरों के साथ काम कर सकता है। ज्यादातर मामलों में, थीटा जॉइन को इनर जॉइन कहा जाता है।
थीटा जॉइन जोइन का सबसे बुनियादी प्रकार है। यह उन सभी पंक्तियों को उन तालिकाओं से लौटा देगा जहाँ JOIN स्थिति संतुष्ट है।
वाक्य - विन्यास:
SELECT columnsFROM table-1INNER JOIN table-2ON table-1.column = table-2.column;
डेमो डेटाबेस के निम्नलिखित तालिकाओं पर विचार करें:
पुस्तक:
कीमत:
हम प्रत्येक पुस्तक का नाम और संबंधित मूल्य देखना चाहते हैं। हम निम्नलिखित कमांड चला सकते हैं:
SELECT Book.name, Price.priceFROM BookINNER JOIN PriceON Book.id = Price.id;
यह निम्नलिखित लौटाएगा:
केवल 3 पंक्तियों ने जुड़ने की स्थिति को संतुष्ट किया।
EQUI जॉइन करें
EQUI जॉइन हमें प्राथमिक कुंजी / विदेशी कुंजी संबंध के आधार पर दो तालिकाओं में शामिल होने का एक तरीका प्रदान करता है। उदाहरण के लिए:
SELECT *FROM BookJOIN Price ON Book.id = Price.id;
यह निम्नलिखित लौटाएगा:
सामान्य कॉलम यानी आईडी कॉलम के आधार पर दोनों तालिकाओं से रिकॉर्ड लौटा दिए गए हैं।
प्राकृतिक जुड़ाव
इस प्रकार की जॉइन हमें EQUI जॉइन करने का एक और तरीका प्रदान करती है। हम नीचे दिखाए गए अनुसार प्राकृतिक कीवर्ड जोड़कर अपने पिछले उदाहरण को बेहतर बना सकते हैं:
SELECT *FROM BookNATURAL JOIN Price;
यह निम्नलिखित लौटाएगा:
केवल एक आईडी कॉलम वापस किया गया है। प्राकृतिक जॉय नोट करने में सक्षम था कि आईडी कॉलम दो तालिकाओं में आम है। केवल एक लौटा था।
बाहरी जोड़
PostgreSQL में तीन प्रकार के बाहरी जॉइन हैं:
- बाईं ओर का बाहरी जोड़।
- राइट आउटर जॉइन करें।
- पूर्ण बाहरी सम्मिलित हों
बाईं ओर का बाहरी जोड़
बायाँ OUTER JOIN बाईं ओर की तालिका में सभी पंक्तियों को वापस करेगा और केवल दाईं ओर की तालिका में पंक्तियाँ जहाँ ज्वाइन कंडीशन को संतुष्ट किया गया है।
वाक्य - विन्यास:
SELECT columnsFROM table-1LEFT OUTER JOIN table-2ON table-1.column = table-2.column;
हमें प्रत्येक पुस्तक का नाम और संबंधित मूल्य देखना होगा। हम निम्नलिखित कमांड चला सकते हैं:
SELECT Book.name, Price.priceFROM BookLEFT JOIN PriceON Book.id = Price.id;
यह निम्नलिखित देता है:
बुक टेबल में सभी 4 पंक्तियों को वापस कर दिया गया है। मूल्य तालिका से केवल 3 पंक्तियों में शामिल होने की स्थिति से मुलाकात की। इसलिए उन्हें लौटा दिया गया। अंतिम पुस्तक का कोई मूल्य मूल्य नहीं है।
सही जॉय शामिल हैं
दाईं ओर स्थित तालिका में दाईं ओर की तालिका में सभी पंक्तियों को छोड़ दिया जाता है और बाईं ओर स्थित तालिका में पंक्तियों को जोड़ दिया जाता है, जहां ज्वाइन कंडीशन संतुष्ट हो गई है।
वाक्य - विन्यास:
SELECT columnsFROM table-1RIGHT OUTER JOIN table-2ON table-1.column = table-2.column;
उदाहरण के लिए:
SELECT Book.name, Price.priceFROM BookRIGHT JOIN PriceON Book.id = Price.id;
यह निम्नलिखित देता है:
मूल्य तालिका में सभी पंक्तियों को वापस कर दिया गया है। केवल पुस्तक तालिका में शामिल पंक्तियाँ, जो जुड़ने की स्थिति में थीं, वापस आ गईं। 3 rd पंक्ति का नाम के लिए कोई मूल्य नहीं है क्योंकि कोई मैच नहीं मिला था।
पूर्ण बाहरी सम्मिलित हों
इस प्रकार का JOIN बाईं ओर की तालिका में सभी पंक्तियों को वापस कर देगा और तालिका में सभी पंक्तियों को दाएं हाथ की तरफ nulls के साथ जोड़ देगा जहां ज्वाइन कंडीशन संतुष्ट नहीं है।
वाक्य - विन्यास:
SELECT columnsFROM table-1FULL OUTER JOIN table-2ON table-1.column = table-2.column;
उदाहरण के लिए:
SELECT Book.name, Price.priceFROM BookFULL OUTER JOIN PriceON Book.id = Price.id;
यह निम्नलिखित देता है:
सभी तालिकाओं से सभी पंक्तियों को वापस कर दिया गया है, नल के साथ जहां कोई मैच नहीं मिला।
PgAdmin का उपयोग करना
उपरोक्त कार्य pgAdmin में पूरा किया जा सकता है:
भीतरी जुड़ता है
थीटा जॉइन
चरण 1) अपने pgAdmin खाते में लॉगिन करें।
चरण 2)
- बाईं ओर नेविगेशन बार से- डेटाबेस पर क्लिक करें।
- डेमो पर क्लिक करें।
चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:
SELECT Book.name, Price.priceFROM BookINNER JOIN PriceON Book.id = Price.id;
चरण 4) निष्पादित बटन पर क्लिक करें।
इसे निम्नलिखित लौटाना चाहिए:
EQUI जॉइन करें
चरण 1) अपने pgAdmin खाते में लॉगिन करें।
चरण 2)
- बाईं ओर नेविगेशन बार से- डेटाबेस पर क्लिक करें।
- डेमो पर क्लिक करें।
चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:
SELECT *FROM BookJOIN Price ON Book.id = Price.id;
चरण 4) निष्पादित बटन पर क्लिक करें।
इसे निम्नलिखित लौटाना चाहिए:
प्राकृतिक जुड़ाव
चरण 1) अपने pgAdmin खाते में लॉगिन करें।
चरण 2)
- बाईं ओर नेविगेशन बार से- डेटाबेस पर क्लिक करें।
- डेमो पर क्लिक करें।
चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:
SELECT *FROM BookNATURAL JOIN Price;
चरण 4) निष्पादित बटन पर क्लिक करें।
इसे निम्नलिखित लौटाना चाहिए:
INNER JOIN (सरल जुड़ाव)
चरण 1) अपने pgAdmin खाते में लॉगिन करें।
चरण 2)
- बाईं ओर नेविगेशन बार से- डेटाबेस पर क्लिक करें।
- डेमो पर क्लिक करें।
चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:
SELECT Book.name, Price.priceFROM BookINNER JOIN PriceON Book.id = Price.id;
चरण 4) निष्पादित बटन पर क्लिक करें।
इसे निम्नलिखित लौटाना चाहिए:
बाहरी जोड़
बाईं ओर का बाहरी जोड़
चरण 1) अपने pgAdmin खाते में लॉगिन करें।
चरण 2)
- बाईं ओर नेविगेशन बार से- डेटाबेस पर क्लिक करें।
- डेमो पर क्लिक करें।
चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:
SELECT Book.name, Price.priceFROM BookLEFT JOIN PriceON Book.id = Price.id;
चरण 4) निष्पादित बटन पर क्लिक करें।
इसे निम्नलिखित लौटाना चाहिए:
सही जॉय शामिल हैं
चरण 1) अपने pgAdmin खाते में लॉगिन करें।
चरण 2)
- बाईं ओर नेविगेशन बार से- डेटाबेस पर क्लिक करें।
- डेमो पर क्लिक करें।
चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:
SELECT Book.name, Price.priceFROM BookRIGHT JOIN PriceON Book.id = Price.id;
चरण 4) निष्पादित बटन पर क्लिक करें।
इसे निम्नलिखित लौटाना चाहिए:
पूर्ण बाहरी सम्मिलित हों
चरण 1) अपने pgAdmin खाते में लॉगिन करें।
चरण 2)
- बाईं ओर नेविगेशन बार से- डेटाबेस पर क्लिक करें।
- डेमो पर क्लिक करें।
चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:
SELECT Book.name, Price.priceFROM BookFULL OUTER JOIN PriceON Book.id = Price.id;
चरण 4) निष्पादित बटन पर क्लिक करें।
इसे निम्नलिखित लौटाना चाहिए:
सारांश:
- PostgreSQL में, हम JOINs का उपयोग करते हैं जब हमें एक से अधिक टेबल से मान प्राप्त करने की आवश्यकता होती है।
- INNER JOIN, JOIN का सबसे मूल प्रकार है। यह सभी रिकॉर्ड लौटाता है जहाँ निर्दिष्ट JOIN स्थिति संतुष्ट थी।
- बायाँ बाईं ओर तालिका में सभी पंक्तियों को छोड़ देता है और केवल दूसरी पंक्ति में पंक्तियाँ जहाँ संतुष्ट हो गया है।
- राइट ओवर जॉइन सभी पंक्तियों को दाहिने हाथ की तालिका में और दूसरी पंक्तियों में केवल उन पंक्तियों को लौटाता है जहाँ ज्वाइन कंडीशन संतुष्ट हो गई है।
- इस प्रकार का JOIN बाएं हाथ की तालिका में सभी पंक्तियों को और दाएं हाथ की तालिका में सभी पंक्तियों को नल के साथ लौटाता है जहां जॉइन कंडीशन संतुष्ट नहीं है।
इस ट्यूटोरियल में प्रयुक्त डेटाबेस डाउनलोड करें