SQL BERGABUNG Kata Kunci
GABUNG DALAM
Perintah INNER JOIN
mengembalikan baris yang memiliki nilai yang cocok di kedua tabel.
SQL berikut memilih semua pesanan dengan informasi pelanggan:
Contoh
SELECT Orders.OrderID, Customers.CustomerName
FROM Orders
INNER JOIN
Customers ON Orders.CustomerID = Customers.CustomerID;
Catatan: Kata kunci INNER JOIN memilih semua baris dari kedua tabel selama ada kecocokan antar kolom. Jika ada catatan di tabel "Pesanan" yang tidak cocok dengan "Pelanggan", pesanan ini tidak akan ditampilkan!
Pernyataan SQL berikut memilih semua pesanan dengan informasi pelanggan dan pengirim:
Contoh
SELECT Orders.OrderID, Customers.CustomerName, Shippers.ShipperName
FROM
((Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID)
INNER JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID);
KIRI GABUNG
Perintah LEFT JOIN
mengembalikan semua baris dari tabel kiri, dan baris yang cocok dari tabel kanan. Hasilnya NULL dari sisi kanan, jika tidak ada kecocokan.
SQL berikut akan memilih semua pelanggan, dan pesanan apa pun yang mungkin mereka miliki:
Contoh
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID = Orders.CustomerID
ORDER BY Customers.CustomerName;
Catatan: Kata LEFT JOIN
kunci mengembalikan semua catatan dari tabel kiri (Pelanggan), bahkan jika tidak ada kecocokan di tabel kanan (Pesanan).
GABUNG BENAR
Perintah RIGHT JOIN
mengembalikan semua baris dari tabel kanan, dan catatan yang cocok dari tabel kiri. Hasilnya adalah NULL dari sisi kiri, ketika tidak ada kecocokan.
SQL berikut akan mengembalikan semua karyawan, dan semua pesanan yang mungkin telah mereka lakukan:
Contoh
SELECT Orders.OrderID, Employees.LastName, Employees.FirstName
FROM Orders
RIGHT JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID
ORDER BY Orders.OrderID;
Catatan: Kata RIGHT JOIN
kunci mengembalikan semua catatan dari tabel kanan (Karyawan), bahkan jika tidak ada kecocokan di tabel kiri (Pesanan).
GABUNG LUAR LENGKAP
Perintah FULL OUTER JOIN
mengembalikan semua baris ketika ada kecocokan di tabel kiri atau tabel kanan.
Pernyataan SQL berikut memilih semua pelanggan, dan semua pesanan:
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
FULL OUTER JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;
Catatan: Kata FULL OUTER JOIN
kunci mengembalikan semua baris dari tabel kiri (Pelanggan), dan semua baris dari tabel kanan (Pesanan). Jika ada baris di "Pelanggan" yang tidak cocok di "Pesanan", atau jika ada baris di "Pesanan" yang tidak cocok di "Pelanggan", baris tersebut juga akan dicantumkan.