Apa itu join? Join adalah cara untuk menghubungkan data yang diambil dari tabel-tabel melalui sebuah kolom yang menghubungkan mereka. Misal, pembaca mungkin ingin menghubungkan tabel alamat dengan tabel nomor telepon berdasarkan nama seseorang (contoh: "Berikan saya alamat dan nomor telepon seseorang yang bernama John Smith.").
Mengapa join itu penting?
Join memperbolehkan kita untuk mengambil data dari beberapa tabel melalui satu query. Hanya menggunakan sebuah tabel artinya kita hanya dapat menyimpan/memperoleh data yang terbatas atau justru menyimpan/memperoleh data yang terlalu banyak sehingga tabelnya menjadi kurang baik. Join menghubungkan satu tabel dengan tabel yang lain (inilah yang dimaksud dengan relational dari istilah relational database).
BASIC COMMAND (Perintah Dasar JOIN pada Database)
Perintah dasar JOIN yang perlu anda ketahui, sebagai berikut:
SELECT table_a.*, table_b.id, table_b.name, table_b.id_relation
FORM table_a
JOIN table_b
ON table_a.id = table_b.id_relation
Keterangan:
SELECT, adalah Perintah yang digunakan untuk menunjuk atribut yang akan ditampilkan an ketika melakukan select data pada database.
FROM, adalah perintah / command yang digunakan untuk menunjuk tabel mana pada database yang akan di SELECT pertama kali dalam join table.
JOIN, adalah suatu perintah yang digunakan untuk menunjuk tabel yang berelasi dengan tabel yang telah di definisikan pertama.
ON adalah suatu perintah atau command yang digunakan untuk menunjukkan relasi antar table yang sedang di join kan, dengan cara mendefinisikan Primary Key pada tabel pertama selalu diikuti dengan "=" (tanda sama) dengan, lalu diikuti dengan mendefinisikan Foreign Key pada tabel kedua. (Primary key pada table pertama dengan Forigen Key pada table ke-2, bisa dikatakan berelasi apabila value / nilainya sama).
Jika anda ingin menambahkan kondisi anda dapat menambahkan WHERE atau yang lainnya sesuai yang anda butuhkan pada akhir query sebelum tanda ";" (titik koma).
Ada berapa jenis join?
Pada umumnya, terdapat empat jenis JOIN di SQL yakni:
• INNER JOIN
• LEFT JOIN
• RIGHT JOIN
• FULL JOIN
Berikut akan dijabarkan beberapa sql join dengan contoh-contohnya
ERD
Berikut contoh-contoh dari SQL JOIN berdasarkan gambar ERD dan tabel di atas:
--FUUL JOIN
Full
outer join (sering
disingkat full join) akan mengembalikan seluruh baris dari kedua
tabel yang dikenai ON termasuk data-data yang bernilai NULL.
Contoh 2:
--CROSS JOIN
SQL CROSS JOIN menghasilkan himpunan
hasil yang mana jumlah baris dalam tabel pertama dikalikan dengan jumlah baris
dalam tabel kedua jika tidak ada klausa WHERE digunakan bersama dengan CROSS
JOIN. hasil seperti ini disebut sebagai produk Cartesian. Jika klausa WHERE
digunakan dengan CROSS JOIN, berfungsi mirip-mirip seperti INNER JOIN.
Contoh 1:
Contoh 2:
Inner join mungkin tipe join yang
paling banyak dipakai. Inner join mengembalikan baris-baris
dari dua tabel atau lebih yang memenuhi syarat.
Contoh 1:
Contoh 2:
Bentuk
kondisi join untuk mencari nilai join yang
memenuhi dari kedua table, plus nilai yang tidak memenuhi dari salah satu sisi
table tersebut.
Contoh
1:
Contoh
2:
Left outer join (sering disingkat left
join) akan mengembalikan seluruh baris dari tabel disebelah kiri yang
dikenai kondisi ON dan hanya baris dari tabel disebelah kanan yang
memenuhi kondisi join.
Contoh 1:
Contoh 2:
Right outer join (sering disingkat right
join) akan mengembalikan semua baris dari tabel sebelah kanan yang dikenai
kondisi ON dengan data dari tabel sebelah kiri yang memenuhi
kondisi join. Teknik ini merupakan kebalikan dari left
outer join.
Contoh 1:
Contoh 2:
Kata kunci FULL OUTER JOIN digunakan
untuk mengembalikan semua rekaman ketika ada kecocokan dalam catatan tabel kiri
(tabel1) atau kanan (tabel2).
Contoh 1:
Contoh 2:
Equi
Join merupakan
Join yang menggunakan tanda equal (=) untuk membandingkan Operatornya.
Contoh
1:
Contoh
2:
Self JOIN adalah gabungan reguler, tetapi
tabel bergabung dengan dirinya sendiri.
Contoh 1:
contoh 2:
Natural join adalah perintah untuk
membuat penulisan lebih mudah, natural join merupakan proses yang memiliki
kesamaan dalam semua nilai yang memiliki nama yang sama diantara tabel.
Contoh 1:
Contoh 2:
Komentar
Posting Komentar