MySQL Bergabung
MySQL Bergabung dengan Tabel
Klausa JOIN
digunakan untuk menggabungkan baris dari dua atau lebih tabel, berdasarkan kolom terkait di antara mereka.
Mari kita lihat pilihan dari tabel "Pesanan":
OrderID | CustomerID | OrderDate |
---|---|---|
10308 | 2 | 1996-09-18 |
10309 | 37 | 1996-09-19 |
10310 | 77 | 1996-09-20 |
Kemudian, lihat pilihan dari tabel "Pelanggan":
CustomerID | CustomerName | ContactName | Country |
---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mexico |
Perhatikan bahwa kolom "IDPelanggan" di tabel "Pesanan" merujuk ke "IDPelanggan" di tabel "Pelanggan". Hubungan antara dua tabel di atas adalah kolom "CustomerID".
Kemudian, kita dapat membuat pernyataan SQL berikut (yang berisi
INNER JOIN
), yang memilih catatan yang memiliki nilai yang cocok di kedua tabel:
Contoh
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers ON Orders.CustomerID=Customers.CustomerID;
dan itu akan menghasilkan sesuatu seperti ini:
OrderID | CustomerName | OrderDate |
---|---|---|
10308 | Ana Trujillo Emparedados y helados | 9/18/1996 |
10365 | Antonio Moreno Taquería | 11/27/1996 |
10383 | Around the Horn | 12/16/1996 |
10355 | Around the Horn | 11/15/1996 |
10278 | Berglunds snabbköp | 8/12/1996 |
Jenis Penggabungan yang Didukung di MySQL
INNER JOIN
: Mengembalikan record yang memiliki nilai yang cocok di kedua tabelLEFT JOIN
: Mengembalikan semua record dari tabel kiri, dan record yang cocok dari tabel kananRIGHT JOIN
: Mengembalikan semua record dari tabel kanan, dan record yang cocok dari tabel kiriCROSS JOIN
: Mengembalikan semua catatan dari kedua tabel