JOIN DI BASIS DATA

 

🔹 Pengertian JOIN

JOIN adalah perintah SQL yang digunakan untuk menggabungkan data dari dua atau lebih tabel berdasarkan kolom yang saling berhubungan (biasanya primary key dan foreign key).

Contoh kasus:

  • Tabel barang (daftar barang dan stok).

  • Tabel transaksi (catatan penjualan barang).
    Kalau kita ingin melihat nama barang + jumlah terjual dalam satu tabel hasil query → pakai JOIN.


🔹 Macam-Macam JOIN

  1. INNER JOIN

    • Mengambil hanya data yang cocok/beririsan di kedua tabel.

    • Contoh: hanya menampilkan transaksi yang punya data barang valid.

    SELECT barang.nama, transaksi.jumlah FROM barang INNER JOIN transaksi ON barang.id = transaksi.id_barang;

  1. LEFT JOIN (LEFT OUTER JOIN)

    • Mengambil semua data dari tabel kiri, meskipun tidak ada pasangan di tabel kanan.

    • Jika tidak ada pasangan, kolom dari tabel kanan akan bernilai NULL.

    SELECT barang.nama, transaksi.jumlah FROM barang LEFT JOIN transaksi ON barang.id = transaksi.id_barang;

  1. RIGHT JOIN (RIGHT OUTER JOIN)

    • Kebalikan dari LEFT JOIN.

    • Mengambil semua data dari tabel kanan, meskipun tidak ada pasangan di tabel kiri.

    SELECT barang.nama, transaksi.jumlah FROM barang RIGHT JOIN transaksi ON barang.id = transaksi.id_barang;

  1. FULL JOIN (FULL OUTER JOIN)

    • Mengambil semua data dari kedua tabel, baik yang cocok maupun tidak cocok.

    • MySQL tidak mendukung langsung FULL JOIN, tapi bisa diganti dengan UNION dari LEFT JOIN dan RIGHT JOIN.


  1. CROSS JOIN

    • Menghasilkan perkalian Cartesian dari dua tabel (setiap baris tabel A dipasangkan dengan setiap baris tabel B).

    • Jarang dipakai kecuali untuk kasus khusus.


🔹 Fungsi JOIN

  • Menggabungkan data dari beberapa tabel agar lebih informatif.

  • Mengurangi duplikasi data (karena cukup disimpan di tabel berbeda lalu digabung saat query).

  • Memudahkan analisis (contoh: melihat barang + nama pembeli dari tabel berbeda).


🔹 Kelebihan JOIN

✅ Menghemat penyimpanan (data tidak perlu diulang di tiap tabel).
✅ Menjaga integritas data (konsisten antar tabel).
✅ Memudahkan pengambilan laporan yang kompleks.

🔹 Kekurangan JOIN

❌ Query bisa lambat jika tabel besar dan join banyak.
❌ Membutuhkan pemahaman relasi antar tabel.
❌ Bisa membingungkan kalau relasi tabel tidak dirancang dengan baik.


📌 Jadi, JOIN itu alat penting dalam basis data relasional untuk menghubungkan beberapa tabel agar informasi lebih lengkap dan terstruktur.

Komentar

Postingan populer dari blog ini

DFD (Data Flow Diagram)

NORMALISASI DATABASE

TRIGGER di SQL