Berbagai join

Menggabungkan Data di 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;

Catatan. Tergantung pada kasus penggunaan, left_table atau right_table dapat digunakan dalam klausa ON.

Menggabungkan Data di SQL

Joins on joins

Tabel prime_minister_terms dari basis data para pemimpin dunia

Tabel prime_minister_terms, menampilkan dua kolom: nama perdana menteri dan tahun mereka menjabat.

Menggabungkan Data di SQL

Apa yang harus join terlebih dahulu?

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    |
Menggabungkan Data di SQL

Join berantai

Diagram yang menunjukkan hasil gabungan dari slide sebelumnya (presidents dan prime_ministers) dengan tabel baru, prime_minister_terms. Hasilnya terdiri dari lima kolom: negara, benua, presiden,prime_minister, and pm_start.

Menggabungkan Data di SQL

Join berantai

-- 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);
Menggabungkan Data di SQL

Apa yang kita ikuti di ON?

SELECT * 
FROM left_table
INNER JOIN right_table
ON left_table.id = right_table.id;
Diagram untuk INNER JOIN ON field id

Sebuah diagram yang menunjukkan bahwa saat melakukan pencocokan pada satu kolom, terkadang field penghubung dari tabel kiri menemukan beberapa kecocokan dalam kolom field dari tabel kanan. Set hasil memiliki beberapa catatan untuk setiap id di tabel kanan yang cocok dengan tabel kiri.

Menggabungkan Data di SQL

Bergabung dengan beberapa kunci

SELECT * 
FROM left_table
INNER JOIN right_table
ON left_table.id = right_table.id
    AND left_table.date = right_table.date;
Diagram untuk INNER JOIN ON sebuah id AND date field

Sebuah diagram yang menunjukkan bahwa jumlah catatan baris yang dikembalikan dalam kumpulan hasil dapat dikurangi jika digunakan beberapa field penggabungan. . Di sini, baik id maupun tanggal digunakan untuk menggabungkan kedua tabel.

Menggabungkan Data di SQL

Ayo berlatih!

Menggabungkan Data di SQL

Preparing Video For Download...