Joins in PostgreSQL
Joins digunakan untuk mengambil data dari beberapa tabel berdasarkan hubungan di antara tabel-tabel tersebut.
1. INNER JOIN
Mengembalikan hanya baris yang memiliki kecocokan di kedua tabel.
SELECT users.name, orders.amount
FROM users
INNER JOIN orders ON users.id = orders.user_id;
2. LEFT JOIN
Mengembalikan semua baris dari tabel kiri dan baris yang cocok dari tabel kanan. Jika tidak ada kecocokan, nilai NULL dikembalikan.
SELECT users.name, orders.amount
FROM users
LEFT JOIN orders ON users.id = orders.user_id;
3. RIGHT JOIN
Mengembalikan semua baris dari tabel kanan dan baris yang cocok dari tabel kiri. Jika tidak ada kecocokan, nilai NULL dikembalikan.
SELECT users.name, orders.amount
FROM users
RIGHT JOIN orders ON users.id = orders.user_id;
4. FULL JOIN
Mengembalikan semua baris dari kedua tabel. Jika tidak ada kecocokan, nilai NULL dikembalikan.
SELECT users.name, orders.amount
FROM users
FULL JOIN orders ON users.id = orders.user_id;
5. CROSS JOIN
Mengembalikan hasil perkalian dari kedua tabel (kombinasi Cartesian).
SELECT users.name, orders.amount
FROM users
CROSS JOIN orders;
Dengan memahami berbagai jenis JOIN, Anda dapat mengambil data yang lebih kompleks dan terstruktur dalam PostgreSQL.