TOP

SQL पाठ 10. तालिकाओं को जोड़ना (INNER JOIN)

YouLibreCalc for Excel logo

SQL भाषा की सबसे शक्तिशाली विशेषता क्वेरी निष्पादन के दौरान DBMS की रैम में विभिन्न तालिकाओं को संयोजित करने की क्षमता है। जॉइन्स का उपयोग अक्सर डेटा विश्लेषण के लिए किया जाता है। एक नियम के रूप में, डेटा अलग-अलग तालिकाओं में होता है, जो उन्हें अधिक कुशलता से संग्रहीत करने की अनुमति देता है (चूंकि जानकारी डुप्लिकेट नहीं होती है), डेटा प्रोसेसिंग को सरल बनाता है, और डेटाबेस को स्केल करने की अनुमति देता है (अतिरिक्त जानकारी के साथ नई तालिकाओं को जोड़ना संभव है) .

DBMS MS Access में प्रयुक्त डेटाबेस टेबल रिलेशनल टेबल हैं, यानी सभी टेबल को सामान्य फ़ील्ड द्वारा एक दूसरे से जोड़ा जा सकता है।


1. तालिकाओं का एक संयोजन बनाना (जॉइन्स)

तालिकाओं का संयोजन एक बहुत ही सरल प्रक्रिया है। उन सभी तालिकाओं को निर्दिष्ट करना आवश्यक है जिन्हें संयोजन में शामिल किया जाएगा और डीबीएमएस को "समझाना" होगा कि वे एक-दूसरे से कैसे संबंधित होंगे। कनेक्शन शब्द WHERE का उपयोग करके बनाया गया है, उदाहरण के लिए:

Run SQLSELECT DISTINCT Seller_name, Product 
FROM Sellers, Sumproduct 
WHERE Sellers.City = Sumproduct.City

दोनों तालिकाओं को मिलाकर, हम यह देख पाए कि प्रत्येक विक्रेता कौन से उत्पाद बेचता है। आइए अनुरोध कोड पर करीब से नज़र डालें, क्योंकि यह सामान्य अनुरोध से थोड़ा अलग है। SELECT स्टेटमेंट उन कॉलमों को निर्दिष्ट करने से शुरू होता है जिन्हें हम आउटपुट करना चाहते हैं, लेकिन ये फ़ील्ड अलग-अलग तालिकाओं में हैं, FROM क्लॉज में दो तालिकाएँ हैं जिन्हें हम SELECT स्टेटमेंट में शामिल करना चाहते हैं, तालिकाओं को WHERE शब्द का उपयोग करके जोड़ा जाता है, जो कॉलम निर्दिष्ट करता है शामिल होना। आपको फ़ील्ड का पूरा नाम (Table.Field) निर्दिष्ट करना होगा, क्योंकि फ़ील्ड City दोनों तालिकाओं में है।

2. आंतरिक संयोजन (INNER JOIN)

पिछले उदाहरण में, हमने तालिकाओं को संयोजित करने के लिए WHERE शब्द का उपयोग किया था, जो दो तालिकाओं की तुल्यता के आधार पर जाँच करता है। इस प्रकार के संयोजन को "आंतरिक संयोजन" भी कहा जाता है। तालिकाओं को संयोजित करने का एक अन्य तरीका भी है जो संयोजन के प्रकार को स्पष्ट रूप से इंगित करता है। निम्नलिखित उदाहरण पर विचार करें:

Run SQLSELECT DISTINCT Seller_name, Product 
FROM Sellers 
INNER JOIN Sumproduct 
ON Sellers.City = Sumproduct.City

इस क्वेरी में, WHERE के बजाय, हमने निर्माण INNER JOIN ... ON ... का उपयोग किया, जिसने एक समान परिणाम दिया। हालाँकि WHERE क्लॉज के साथ संयोजन छोटा है, फिर भी INNER JOIN का उपयोग करना बेहतर है क्योंकि यह अधिक लचीला है, जैसा कि निम्नलिखित अनुभागों में अधिक विस्तार से बताया जाएगा।