Relasi Antar Tabel di PostgreSQL: FOREIGN KEY & JOIN
Dalam database relasional, data jarang berdiri sendiri. Biasanya, data saling terhubung antara satu tabel dengan tabel lain. Di PostgreSQL, konsep ini diwujudkan melalui relasi antar tabel. Dua hal penting yang perlu dipahami adalah FOREIGN KEY sebagai penghubung data, dan JOIN sebagai cara menampilkan data dari beberapa tabel sekaligus. Artikel ini akan membahas dasar-dasar FOREIGN KEY dan JOIN di PostgreSQL dengan contoh sederhana. 🚀
FOREIGN KEY di PostgreSQL 🔑
Apa Itu FOREIGN KEY?
FOREIGN KEY adalah sebuah kolom (atau kumpulan kolom) dalam tabel yang mengacu ke PRIMARY KEY di tabel lain. Dengan FOREIGN KEY, PostgreSQL menjamin integritas data, sehingga setiap data di tabel anak (child) harus sesuai dengan data di tabel induk (parent).
Contoh FOREIGN KEY
Misalnya, kita punya dua tabel: mahasiswa
dan jurusan
. Tabel mahasiswa
memiliki kolom jurusan_id
yang merujuk ke id
di tabel jurusan
.
CREATE TABLE jurusan ( id SERIAL PRIMARY KEY, nama_jurusan VARCHAR(100) NOT NULL ); CREATE TABLE mahasiswa ( id SERIAL PRIMARY KEY, nama VARCHAR(100) NOT NULL, jurusan_id INT REFERENCES jurusan(id) );
Pada contoh di atas, kolom jurusan_id
adalah FOREIGN KEY yang menghubungkan mahasiswa dengan jurusan.
JOIN di PostgreSQL 🔗
Apa Itu JOIN?
JOIN digunakan untuk menggabungkan data dari dua atau lebih tabel berdasarkan relasi yang ada. Dengan JOIN, kita bisa melihat data mahasiswa bersamaan dengan jurusannya dalam satu query.
Jenis-Jenis JOIN di PostgreSQL
- INNER JOIN: Menampilkan data yang cocok di kedua tabel.
- LEFT JOIN: Menampilkan semua data dari tabel kiri, dan data yang cocok dari tabel kanan.
- RIGHT JOIN: Menampilkan semua data dari tabel kanan, dan data yang cocok dari tabel kiri.
- FULL JOIN: Menampilkan semua data baik dari tabel kiri maupun kanan, meskipun tidak ada kecocokan.
Contoh Query JOIN
INNER JOIN
SELECT m.nama, j.nama_jurusan FROM mahasiswa m INNER JOIN jurusan j ON m.jurusan_id = j.id;
Query di atas akan menampilkan nama mahasiswa beserta nama jurusannya.
LEFT JOIN
SELECT m.nama, j.nama_jurusan FROM mahasiswa m LEFT JOIN jurusan j ON m.jurusan_id = j.id;
Dengan LEFT JOIN, meskipun ada mahasiswa yang belum memiliki jurusan, tetap akan ditampilkan.
Tabel Ringkasan FOREIGN KEY & JOIN
Konsep | Fungsi | Contoh |
---|---|---|
FOREIGN KEY | Menghubungkan tabel anak ke tabel induk | jurusan_id INT REFERENCES jurusan(id) |
INNER JOIN | Gabungkan data yang cocok | SELECT ... INNER JOIN ... |
LEFT JOIN | Tampilkan semua dari tabel kiri | SELECT ... LEFT JOIN ... |
RIGHT JOIN | Tampilkan semua dari tabel kanan | SELECT ... RIGHT JOIN ... |
FULL JOIN | Tampilkan semua data dari kedua tabel | SELECT ... FULL JOIN ... |
Kesimpulan
Relasi antar tabel di PostgreSQL adalah fondasi penting dalam manajemen database. Dengan FOREIGN KEY, kita bisa menjaga integritas data. Sementara JOIN memudahkan kita menggabungkan data dari beberapa tabel untuk analisis lebih mendalam. 🎯 Dengan memahami keduanya, kamu akan lebih siap membangun sistem database yang kuat dan efisien. 💡
Belum ada Komentar untuk "Relasi Antar Tabel di PostgreSQL: FOREIGN KEY & JOIN"
Posting Komentar