Multiple joins

SQL में डेटा जॉइन करना

Maham Faisal Khan

Senior Content Developer, DataCamp

Joins on joins

SELECT *
FROM left_table
INNER JOIN right_table
ON left_table.id = right_table.id

INNER JOIN another_table ON left_table.id = another_table.id;

Note. उपयोग के अनुसार, ON क्लॉज़ में left_table या right_table में से कोई भी हो सकता है।

SQL में डेटा जॉइन करना

Joins on joins

हमारे world leaders डेटाबेस की prime_minister_terms टेबल

prime_minister_terms टेबल, जिसमें दो कॉलम हैं: prime_minister का नाम और वे वर्ष जब उन्होंने पद संभाला.

SQL में डेटा जॉइन करना

What to join first?

SELECT p1.country, p1.continent, 
       president, prime_minister
FROM prime_ministers as p1
INNER JOIN presidents as p2
USING(country);
| country  | continent     | president               | prime_minister   |
| -------- | ------------- | ----------------------- | ---------------- |
| Egypt    | Africa        | Abdel Fattah el-Sisi    | Mostafa Madbouly |
| Portugal | Europe        | Marcelo Rebelo de Sousa | Luís Montenegro  |
| Pakistan | Asia          | Asif Ali Zardari        | Shehbaz Sharif   |
| India    | Asia          | Droupadi Murmu          | Narendra Modi    |
SQL में डेटा जॉइन करना

Chaining joins

पिछली स्लाइड के मर्ज (presidents और prime_ministers) के परिणाम सेट को नई टेबल prime_minister_terms के साथ दिखाने वाला आरेख. परिणाम में पाँच कॉलम हैं: country, continent, president, prime_minister, और pm_start.

SQL में डेटा जॉइन करना

Chaining joins

-- SQL query for chaining inner joins
SELECT 
    p1.country, 
    p1.continent, 
    president, 
    prime_minister, 
    pm_start
FROM prime_ministers as p1
INNER JOIN presidents as p2
USING(country)

INNER JOIN prime_minister_terms as p3 USING(prime_minister);
SQL में डेटा जॉइन करना

What are we joining ON?

SELECT * 
FROM left_table
INNER JOIN right_table
ON left_table.id = right_table.id;
id फ़ील्ड पर INNER JOIN का आरेख

जब एक कॉलम पर मैच करते हैं, तो कभी-कभी left टेबल का joining फ़ील्ड right टेबल में कई मैच पाता है. परिणाम सेट में हर matching right-table id के लिए कई रिकॉर्ड होते हैं.

SQL में डेटा जॉइन करना

Joining on multiple keys

SELECT * 
FROM left_table
INNER JOIN right_table
ON left_table.id = right_table.id
    AND left_table.date = right_table.date;
id और date फ़ील्ड पर INNER JOIN का आरेख

कई joining फ़ील्ड इस्तेमाल करने पर परिणाम सेट में लौटे रिकॉर्ड की संख्या घट सकती है. यहाँ दो टेबल को जोड़ने के लिए id और date दोनों का उपयोग हुआ है.

SQL में डेटा जॉइन करना

अभ्यास करते हैं!

SQL में डेटा जॉइन करना

Preparing Video For Download...