Dalam sistem database dikenal adanya istilah Join. Maksudnya yaitu menyajikan data dari beberapa tabel dimana data yang ditampilkan memiliki kesamaan berdasarkan bentuk datanya. Agar mudah memahaminya saya uraikan satu persatu beberapa bentuk SQL Join pada SQL Server.
1. Inner Join
Menampilkan data dari dua tabel atau lebih dimana nilai kunci dari tabel yang ada harus sama. Lihat gambar ilustrasi dibawah ini
Contoh query dari Inner Join
SELECT od.OrderId,od.OrderDate,od.CustomerId,cs.CompanyName, od.Freight,od.ShipName FROM Customers cs LEFT JOIN Orders od ON cs.CustomerId=od.CustomerIdHasilnya seperti gambar berikut
2. Left Join
Menampilkan baris data dari tabel kiri yang memiliki hubungan dengan baris data yang cocok dari tabel kanan. Jika tidak ada kolom yang cocok pada tabel kanan, maka nilai yang ditampilkan adalah NULL. Lihat gambar ilustrasi dibawah ini
Menampilkan baris data dari tabel kiri yang memiliki hubungan dengan baris data yang cocok dari tabel kanan. Jika tidak ada kolom yang cocok pada tabel kanan, maka nilai yang ditampilkan adalah NULL. Lihat gambar ilustrasi dibawah ini
Contoh query dari Left Join
SELECT od.OrderId,od.OrderDate,od.CustomerId,cs.CompanyName, od.Freight,od.ShipName FROM Customers cs LEFT JOIN Orders od ON cs.CustomerId=od.CustomerIdHasilnya seperti gambar berikut
3. Right Join
Fungsi ini kebalikan dari Left Join. Dimana menampilkan baris data dari tabel kanan yang memiliki hubungan dengan baris data yang cocok dari tabel kiri. Jika tidak ada kolom yang cocok pada tabel kiri, maka nilai yang ditampilkan adalah NULL. Lihat gambar ilustrasi dibawah ini
Fungsi ini kebalikan dari Left Join. Dimana menampilkan baris data dari tabel kanan yang memiliki hubungan dengan baris data yang cocok dari tabel kiri. Jika tidak ada kolom yang cocok pada tabel kiri, maka nilai yang ditampilkan adalah NULL. Lihat gambar ilustrasi dibawah ini
Contoh query dari Right Join
SELECT od.OrderId,od.OrderDate,od.CustomerId,cs.CompanyName, od.Freight,od.ShipName FROM Customers cs RIGHT JOIN Orders od ON cs.CustomerId=od.CustomerIdHasilnya seperti gambar berikut
4. Full Outer Join
Menampilkan baris data dari tabel kanan dan tabel kiri yang memiliki hubungan dengan baris data yang cocok. Jika tidak ada kolom yang cocok, maka nilai yang ditampilkan adalah NULL. Lihat gambar ilustrasi dibawah ini
Menampilkan baris data dari tabel kanan dan tabel kiri yang memiliki hubungan dengan baris data yang cocok. Jika tidak ada kolom yang cocok, maka nilai yang ditampilkan adalah NULL. Lihat gambar ilustrasi dibawah ini
Contoh query dari Full Outer Join
SELECT od.OrderId,od.OrderDate,od.CustomerId,cs.CompanyName, od.Freight,od.ShipName FROM Customers cs FULL JOIN Orders od ON cs.CustomerId=od.CustomerIdHasilnya seperti gambar berikut
5. Cross Join
Menampilkan semua baris data dari tabel kanan dan tabel kiri tanpa melihat hubungan antara baris data yang cocok. Data yang ditampilkan merupakan data yang bersifat substitusi (perkalian) antar tabel.
Contoh query dari Cross Join
Menampilkan semua baris data dari tabel kanan dan tabel kiri tanpa melihat hubungan antara baris data yang cocok. Data yang ditampilkan merupakan data yang bersifat substitusi (perkalian) antar tabel.
Contoh query dari Cross Join
SELECT od.OrderId,od.OrderDate,od.CustomerId,cs.CompanyName, od.Freight,od.ShipName FROM Customers cs CROSS JOIN Orders odHasilnya seperti gambar berikut
Pada nilai yang di blok warna merah merupakan nilai subtitusi dari dua tabel yaitu tabel Customers dengan jumlah record 91 dan tabel Orders dengan jumlah record 830. Apabila nilai 91 x 830 = 75.530. Untuk lebih paham, silahkan anda coba sendiri dengan memindahkan posisi tabel yang ada dan field yang ingin ditampilkan.
Database
,
Pemrograman
,
SQL Server
,
Tutorial
Tidak ada komentar:
Posting Komentar