Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> SQL

SQL LEFT JOIN: एक संपूर्ण गाइड

एक 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;

हमारी क्वेरी सात रिकॉर्ड लौटाती है:

nametitledeptname
LukeSales AssociateSales
MikeSales AssociateSales
HannahSales AssociateSales
GeoffSenior Sales AssociateSales
AlexisSales AssociateSales
EmmaMarketing DirectorMarketing
JonahVice President of SalesExecutive

(7 पंक्तियाँ)

हमारी क्वेरी की पहली लाइन पर, हम निर्दिष्ट करते हैं कि हम तीन कॉलम प्राप्त करना चाहते हैं। हम अपने कर्मचारियों के नाम, उनके टाइटल, और उस विभाग का नाम प्राप्त करते हैं जिसके लिए वे काम करते हैं। AS DeptName हमारी क्वेरी को बताता है कि विभाग नाम कॉलम को DeptName कहा जाना चाहिए।

अगली लाइन पर, हम निर्दिष्ट करते हैं कि हम अपने employees टेबल से जानकारी प्राप्त करना चाहते हैं। फिर, हम उस टेबल और company_departments के बीच एक LEFT JOIN बनाते हैं। अंतिम लाइन पर, हम अपने दो टेबल को उनके सामान्य मूल्यों: department_id का उपयोग करके एक साथ जोड़ते हैं।

LEFT JOINs केवल बाएं टेबल से सभी पंक्तियाँ और दाएं टेबल से उन पंक्तियों को लौटाते हैं जिनके लिए जॉइन शर्त पूरी होती है।

यदि हमारे पास विभाग ID 9 वाला एक कर्मचारी है और वह विभाग मौजूद नहीं है, तो वे अभी भी हमारी क्वेरी में दिखाई देंगे। यदि हमारे पास एक कंपनी विभाग है जो मौजूद नहीं है, तो वह हमारे JOIN क्वेरी में दिखाई नहीं देगा।

आइए क्वेरी को फिर से चलाएं, लेकिन इस बार हमारे डेटाबेस में एक नए कर्मचारी के साथ। ये हमारे नए कर्मचारी के मूल्य हैं:

nametitledepartment_id
AdamSenior Sales Associate9

(1 पंक्ति)

विभाग ID 9 हमारी टेबल company_departments के भीतर मौजूद नहीं है। लेकिन जब हम ऊपर की तरह समान लेफ्ट जॉइन क्वेरी चलाते हैं, तो Adam का रिकॉर्ड अभी भी शामिल है, क्योंकि हम LEFT JOIN का उपयोग कर रहे हैं। यहां उसी INNER JOIN क्वेरी का परिणाम है जिसे हमने ऊपर निष्पादित किया था, लेकिन Adam के रिकॉर्ड के साथ:

nametitledeptname
LukeSales AssociateSales
MikeSales AssociateSales
HannahSales AssociateSales
GeoffSenior Sales AssociateSales
AlexisSales AssociateSales
EmmaMarketing DirectorMarketing
JonahVice President of SalesExecutive
AdamSenior Sales Associate

निष्कर्ष

SQL LEFT JOINs एक से अधिक टेबल क्वेरी करते हैं और निर्दिष्ट "बाएं" टेबल से सभी पंक्तियाँ लौटाते हैं। वे उन पंक्तियों को भी लौटाते हैं जहां JOIN शर्त दाएं टेबल से पूरी होती है।

उदाहरण के लिए, मान लीजिए कि आप ग्राहकों की सूची के साथ-साथ उन लॉयल्टी योजनाओं के नाम लौटाना चाहते हैं जिनकी वे सदस्यता लेते हैं। यदि लॉयल्टी योजना के नाम एक अलग टेबल में हैं, तो आप उन्हें पुनर्प्राप्त करने के लिए लेफ्ट जॉइन का उपयोग कर सकते हैं।

हमने एक How to Learn SQL गाइड लिखा है ताकि शिक्षार्थी अपने SQL ज्ञान को आगे बढ़ा सकें। गाइड में शीर्ष शिक्षण संसाधनों की सूची और आपके रास्ते में आपकी मदद करने के लिए कुछ विशेषज्ञ सलाह शामिल है। गाइड को हमारे How to Learn SQL पेज पर देखें।

  1. रिदमबॉक्स की पूरी गाइड रिदमबॉक्स की पूरी गाइड

    एक लिनक्स डिस्ट्रीब्यूशन केवल अपने भागों के योग जितना अच्छा होता है, और इंस्टॉलेशन और डेस्कटॉप वातावरण से परे, अंततः यह एप्लिकेशन हैं जो मायने रखते हैं। रिदमबॉक्स लिनक्स डेस्कटॉप के लिए उपलब्ध सर्वश्रेष्ठ ऑडियो प्लेयर्स में से एक है और यह गाइड आपको इसकी सभी विशेषताओं को दिखाता है। रिदमबॉक्स में स्पष

  1. SQL Server में JOIN SQL Server में JOIN

    SQL Server में JOIN SQL Server (Transact-SQL) में JOIN का उपयोग कई टेबल्स से डेटा पुनर्प्राप्त करने के लिए किया जाता है, जो तब होता है जब दो या अधिक टेबल्स एक SQL कमांड में एक साथ जुड़ी होती हैं। यहां SQL Server में 4 प्रकार के JOIN हैं: INNER JOIN - जिसे सरल कनेक्शन फॉर्म भी कहा जाता है LEFT OUTER

  1. Fitbit Pay मास्टर करें: परम यूजर गाइड Fitbit Pay मास्टर करें: परम यूजर गाइड

    Fitbit उपलब्ध सर्वोत्तम स्मार्ट वियरेबल्स में से एक है। यह कई मॉडल्स में और कई सुविधाओं के साथ आता है। Fitbit की प्रसिद्ध विशेषताओं में से एक है Fitbit Pay। Fitbit Ionic और Fitbit Versa में नियर फील्ड कम्युनिकेशन चिप के साथ, आप किसी भी स्टोर पर भुगतान कर सकते हैं जो कॉन्टैक्टलेस भुगतान स्वीकार करता