3. Left Join

LEFT JOIN dalam SQL adalah jenis join yang menggabungkan dua tabel berdasarkan kondisi yang diberikan dan mengembalikan semua baris dari tabel kiri (left table), serta baris yang cocok dari tabel kanan (right table). Jika tidak ada kecocokan dari tabel kanan, maka nilai yang dikembalikan untuk kolom dari tabel kanan tersebut adalah NULL

Contoh rumusnya hampir sama dengan inner join:

Left JOIN
SELECT kolom1, kolom2, ...
FROM tabel1
LEFT JOIN tabel2
ON tabel1.kolom = tabel2.kolom;

Contoh Kasusnya seperti ini:

Terdapat tabel pelanggan

Tabel Pelanggan
CREATE TABLE pelanggan (
    id_pelanggan INT PRIMARY KEY,
    nama VARCHAR(100) NOT NULL
);

INSERT INTO pelanggan (id_pelanggan, nama)
VALUES
(1, 'Andi'),
(2, 'Budi'),
(3, 'Citra');

Hasilnya

id_pelanggan nama
1 Andi
2 Budi
3 Citra

Lalu terdapat tabel pesanan :

Tabel Pesanan
CREATE TABLE pesanan (
    id_pesanan INT PRIMARY KEY,
    id_pelanggan INT,
    produk VARCHAR(100) NOT NULL,
    FOREIGN KEY (id_pelanggan) REFERENCES pelanggan(id_pelanggan)
);

INSERT INTO pesanan (id_pesanan, id_pelanggan, produk)
VALUES
(101, 1, 'Laptop'),
(102, 1, 'Smartphone'),
(103, 3, 'Headphone');

Hasilnya :

id_pesanan id_pelanggan produk
101 1 Laptop
102 1 Smartphone
103 3 Headphone

Jika kita ingin mendapatkan daftar semua pelanggan beserta pesanannya (jika ada), kita bisa menggunakan LEFT JOIN:

Query Left Join
SELECT pelanggan.nama, pesanan.produk
FROM pelanggan
LEFT JOIN pesanan
ON pelanggan.id_pelanggan = pesanan.id_pelanggan;

Hasilnya :

nama produk
Andi Laptop
Andi Smartphone
Budi NULL
Citra Headphone

LEFT JOIN biasanya digunakan dalam situasi di mana kita ingin menampilkan semua data dari satu tabel (tabel kiri), bahkan jika tidak ada kecocokan di tabel lain (tabel kanan). Ini sangat berguna ketika kita ingin mendapatkan informasi yang lengkap dari tabel utama dan menampilkan informasi terkait dari tabel kedua, tanpa kehilangan data dari tabel utama meskipun tidak ada pasangan datanya di tabel kedua.