एक SQL LEFT JOIN, SQL जॉइन का एक प्रकार है। यह जॉइन आपके क्वेरी में निर्दिष्ट "बाएं" कॉलम से सभी टेबल और "दाएं" कॉलम में एक विशेष शर्त से मेल खाने वाली संबंधित पंक्तियों को लौटाता है।
कई मामलों में, जब आप SQL में क्वेरी लिख रहे होते हैं, तो आपको केवल एक टेबल पर ध्यान केंद्रित करने की आवश्यकता होगी। हालांकि, कई स्थितियां हैं जहां आपको एक ही समय में दो या अधिक टेबल क्वेरी करने की आवश्यकता होगी। इस स्थिति में, आप एक परिणाम बनाना चाहेंगे जो दोनों टेबल से जानकारी को जोड़ता है।
SQL में, इसे जॉइन कहा जाता है। जॉइन आपको कई टेबल से जानकारी प्राप्त करने और परिणाम को एक जॉइन की गई टेबल में संयोजित करने की अनुमति देते हैं। उदाहरण के लिए, आप कर्मचारियों और विभागों की टेबल को एक साथ जोड़ सकते हैं ताकि प्रत्येक कर्मचारी के लिए विभाग का नाम प्राप्त कर सकें।
इस ट्यूटोरियल में, हम SQL में एक प्रकार के जॉइन को समझाने जा रहे हैं: LEFT JOIN। हम चर्चा करेंगे कि LEFT JOINs कहां उपयोगी हैं, और आप उन्हें अपनी SQL क्वेरी में कैसे उपयोग कर सकते हैं।
SQL LEFT JOIN
SQL LEFT JOIN आपकी क्वेरी में निर्दिष्ट "बाएं" टेबल से सभी रिकॉर्ड लौटाता है। यह आपके शर्तों के आधार पर इस टेबल से मानों का मिलान "दाएं" टेबल से करता है। कोई भी मिलान "बाएं" टेबल से सभी रिकॉर्ड के अलावा लौटाए जाते हैं। LEFT JOINs, SQL आउटर जॉइन का एक प्रकार हैं।
उदाहरण के लिए, आप प्रत्येक कर्मचारी के लिए विभाग का नाम प्राप्त करने के लिए लेफ्ट जॉइन का उपयोग कर सकते हैं। यह आपको सभी कर्मचारियों को देखने देगा भले ही उनके पास कोई विभाग असाइन न हो।
LEFT JOIN ऑपरेशन के लिए बुनियादी सिंटैक्स इस प्रकार है:
SELECT Table1.Column1, Table2.Column1 FROM Table1 LEFT JOIN Table2 ON Table1.Column2 = Table1.Column2;
हम SQL SELECT स्टेटमेंट के साथ अपना जॉइन शुरू करते हैं। FROM स्टेटमेंट में टेबल हमारी "बाएं" टेबल है। फिर, हम LEFT JOIN कीवर्ड का उपयोग करते हैं। यह हमें "दाएं" टेबल निर्दिष्ट करने देता है।
हम ON स्टेटमेंट का उपयोग यह निर्धारित करने के लिए करते हैं कि हमारी टेबल किस शर्त पर जुड़ी हुई हैं। LEFT JOINs, आउटर जॉइन का एक प्रकार हैं। इस प्रकार, आप इस प्रकार के जॉइन को left outer joins के रूप में संदर्भित देख सकते हैं।
आइए LEFT JOINs काम कैसे करते हैं, यह दिखाने के लिए एक उदाहरण का उपयोग करें।
LEFT JOIN SQL उदाहरण
मान लीजिए कि हम प्रत्येक कर्मचारी के काम करने वाले विभाग के नामों की सूची प्राप्त करना चाहते हैं। हम एक क्वेरी का उपयोग करके इस जानकारी को पुनर्प्राप्त करना चाहते हैं। यहां एक क्वेरी है जो हमें यह डेटा प्राप्त करने की अनुमति देगी:
SELECT employees.name, employees.title, company_departments.name AS DeptName FROM employees LEFT JOIN company_departments ON employees.department_id = company_departments.department_id;
हमारी क्वेरी सात रिकॉर्ड लौटाती है:
| name | title | deptname |
| Luke | Sales Associate | Sales |
| Mike | Sales Associate | Sales |
| Hannah | Sales Associate | Sales |
| Geoff | Senior Sales Associate | Sales |
| Alexis | Sales Associate | Sales |
| Emma | Marketing Director | Marketing |
| Jonah | Vice President of Sales | Executive |
(7 पंक्तियाँ)
हमारी क्वेरी की पहली लाइन पर, हम निर्दिष्ट करते हैं कि हम तीन कॉलम प्राप्त करना चाहते हैं। हम अपने कर्मचारियों के नाम, उनके टाइटल, और उस विभाग का नाम प्राप्त करते हैं जिसके लिए वे काम करते हैं। AS DeptName हमारी क्वेरी को बताता है कि विभाग नाम कॉलम को DeptName कहा जाना चाहिए।
अगली लाइन पर, हम निर्दिष्ट करते हैं कि हम अपने employees टेबल से जानकारी प्राप्त करना चाहते हैं। फिर, हम उस टेबल और company_departments के बीच एक LEFT JOIN बनाते हैं। अंतिम लाइन पर, हम अपने दो टेबल को उनके सामान्य मूल्यों: department_id का उपयोग करके एक साथ जोड़ते हैं।
LEFT JOINs केवल बाएं टेबल से सभी पंक्तियाँ और दाएं टेबल से उन पंक्तियों को लौटाते हैं जिनके लिए जॉइन शर्त पूरी होती है।
यदि हमारे पास विभाग ID 9 वाला एक कर्मचारी है और वह विभाग मौजूद नहीं है, तो वे अभी भी हमारी क्वेरी में दिखाई देंगे। यदि हमारे पास एक कंपनी विभाग है जो मौजूद नहीं है, तो वह हमारे JOIN क्वेरी में दिखाई नहीं देगा।
आइए क्वेरी को फिर से चलाएं, लेकिन इस बार हमारे डेटाबेस में एक नए कर्मचारी के साथ। ये हमारे नए कर्मचारी के मूल्य हैं:
| name | title | department_id |
| Adam | Senior Sales Associate | 9 |
(1 पंक्ति)
विभाग ID 9 हमारी टेबल company_departments के भीतर मौजूद नहीं है। लेकिन जब हम ऊपर की तरह समान लेफ्ट जॉइन क्वेरी चलाते हैं, तो Adam का रिकॉर्ड अभी भी शामिल है, क्योंकि हम LEFT JOIN का उपयोग कर रहे हैं। यहां उसी INNER JOIN क्वेरी का परिणाम है जिसे हमने ऊपर निष्पादित किया था, लेकिन Adam के रिकॉर्ड के साथ:
| name | title | deptname |
| Luke | Sales Associate | Sales |
| Mike | Sales Associate | Sales |
| Hannah | Sales Associate | Sales |
| Geoff | Senior Sales Associate | Sales |
| Alexis | Sales Associate | Sales |
| Emma | Marketing Director | Marketing |
| Jonah | Vice President of Sales | Executive |
| Adam | Senior Sales Associate |
निष्कर्ष
SQL LEFT JOINs एक से अधिक टेबल क्वेरी करते हैं और निर्दिष्ट "बाएं" टेबल से सभी पंक्तियाँ लौटाते हैं। वे उन पंक्तियों को भी लौटाते हैं जहां JOIN शर्त दाएं टेबल से पूरी होती है।
उदाहरण के लिए, मान लीजिए कि आप ग्राहकों की सूची के साथ-साथ उन लॉयल्टी योजनाओं के नाम लौटाना चाहते हैं जिनकी वे सदस्यता लेते हैं। यदि लॉयल्टी योजना के नाम एक अलग टेबल में हैं, तो आप उन्हें पुनर्प्राप्त करने के लिए लेफ्ट जॉइन का उपयोग कर सकते हैं।
हमने एक How to Learn SQL गाइड लिखा है ताकि शिक्षार्थी अपने SQL ज्ञान को आगे बढ़ा सकें। गाइड में शीर्ष शिक्षण संसाधनों की सूची और आपके रास्ते में आपकी मदद करने के लिए कुछ विशेषज्ञ सलाह शामिल है। गाइड को हमारे How to Learn SQL पेज पर देखें।