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