LEFT JOIN & RIGHT JOIN
Penjelasan
Berbeda dari INNER JOIN, LEFT JOIN tetap menampilkan SEMUA baris dari tabel kiri (yang disebut pertama), meskipun tidak ada pasangannya di tabel kanan — kolom dari tabel kanan akan berisi NULL kalau tidak ada pasangan. RIGHT JOIN kebalikannya: semua baris dari tabel kanan tetap tampil. LEFT JOIN jauh lebih sering dipakai daripada RIGHT JOIN (karena bisa ditulis ulang sebagai LEFT JOIN dengan menukar urutan tabel).
Contoh Konsep
-- Tampilkan SEMUA user, meskipun belum pernah menulis artikel
SELECT u.name, a.title
FROM users AS u
LEFT JOIN articles AS a ON a.author_id = u.id;
-- User yang belum menulis artikel akan muncul dengan a.title = NULL
-- Cari user yang BELUM PERNAH menulis artikel
SELECT u.name
FROM users AS u
LEFT JOIN articles AS a ON a.author_id = u.id
WHERE a.id IS NULL;
Praktikum
Tulis query LEFT JOIN untuk menampilkan semua produk dari tabel 'products' beserta quantity dari tabel 'orders' (kalau ada) — produk yang belum pernah dipesan tetap harus muncul.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Pola "cari baris yang tidak punya pasangan" (`LEFT JOIN ... WHERE kolom_kanan IS NULL`) sangat umum dipakai, misalnya mencari user yang belum pernah checkout, atau produk yang belum pernah terjual.