SISTEM BASIS DATA PERTEMUAN 9 SQL 3 Evicienna
SISTEM BASIS DATA PERTEMUAN 9 SQL 3 (Evicienna) PRODI ILMU KESEHATAN & FAKULTAS RMIK
KEMAMPUAN AKHIR YANG DIHARAPKAN • Mahasiswa mampu memahami cara penggabungan tabel
PENGERTIAN JOIN (PENGGABUNGAN) Join adalah satu konstruksi dasar dari SQL dan Basis Data. Join dapat didefinisikan sebagai kombinasi record dari dua tabel atau lebih didalam basis data relasional dan menghasilkan sebuah tabel (Temporary) baru yang disebut Joined Tabel.
JENIS-JENIS PENGGABUNGAN DALAM MYSQL 1) INNER JOIN Inner Join digunakan untuk menghasilkan baris data dengan menggabungkan 2 tabel atau lebih dengan menggunakan operator perbandingan pada kolom yang terdapat di tebel-tabel tersebut. Dengan Inner Join tabel akan digabungkan 2 arah sehingga tidak ada data yang NULL disatu sisi.
INNER JOIN TABEL 1 TABEL 2
2) LEFT JOIN Left Join merupakan penggabungan tabel dimana data akan ditampilkan secara keseluruhan pada tabel pertama (kiri) namun record pada tabel kedua (kanan) yang kosong akan ditampilkan dengan isi NULL. Biasanya digunakan untuk menghasilkan baris data dari tabel kiri (nama tabel pertama/tabel utama) yang tidak ada pasangan/tidak berelasi datanya pada tabel kanan (nama tabel kedua).
LEFT JOIN TABEL 1 TABEL 2 Left Join menghasilkan baris di sebelah kiri tidak memiliki pasangan pada tabel sebelah kanan, maka nilai yang akan di tampilkan adalah NULL
3) RIGHT JOIN Right Join merupakan penggabungan tabel dimana data akan ditampilkan secara keseluruhan pada tabel kedua (kanan) namun record pada tabel pertama (kiri) yang kosong akan ditampilkan dengan isi NULL. Biasanyan digunakan untuk menghasilkan baris data dari tabel kanan (nama tabel kedua/tabel utama) yang tidak ada pasangan/tidak berelasi datanya pada tabel kiri (nama tabel pertama).
RIGHT JOIN TABEL 1 TABEL 2 Right Join menghasilkan baris di sebelah kanan tidak memiliki pasangan pada tabel sebelah kiri, maka nilai yang akan di tampilkan adalah NULL
4) UNION (GABUNGAN) JOIN Terbagi menjadi 2: q Union Join, digunakan untuk menghasilkan baris data jika ada data yang sama pada salah satu tabel dan digunakan untuk menggabungkan isi dari 2 tabel atau lebih. q Union All, menggabungkan keseluruhan data walaupun data tersebut mempunyai isi yang sama.
5) FULL JOIN Full Join digunakan untuk menampilkan kedua tabel dengan record-record yang bersesuaian saja. Field yang berelasi ditampilkan sekali di awal tabel atau paling kiri.
FULL JOIN TABEL 1 TABEL 2 Full Join menghasilkan kedua tabel dengan record/data yang bersesuaian
CONTOH PENGGABUNGAN TABEL PASIEN NO_ANTRIAN NAMA KODE_POLIKLINIK 1 Bani 01 2 Anna 03 3 Nico 04 4 Damar 07 5 Sarah 09 6 Hendra 11
TABEL POLIKLINIK KODE POLIKLINIK NAMA POLIKLINIK 01 Gigi 02 Anak 03 Kandungan 04 THT 05 Mata 06 Kulit & Kelamin 07 Penyakit Dalam 08 Bedah 09 Syaraf 10 Paru
CARA INNER JOIN 1. SELECT pasien. nama, poliklinik. kode_poliklinik, poliklinik. nama_poliklinik 2. FROM pasien, poliklinik 3. WHERE pasien. kode_poliklinik = poliklinik. kode_poliklinik
HASIL INNER JOIN KODE_POLIKLINIK NAMA_POLIKLINIK 01 Bani 01 Gigi 03 Anna 03 Kandungan 04 Nico 04 THT 07 Damar 07 Penyakit Dalam 09 Sarah Syaraf 09
CARA LEFT JOIN 1. SELECT a. no_antrian, a. nama, b. kode_poliklinik, b. nama_poliklinik 2. FROM pasien AS a 3. LEFT JOIN poliklinik AS b 4. ON a. kode_poliklinik = b. kode_poliklinik
HASIL LEFT JOIN NO_ANTRIAN NAMA KODE_POLIKLINIK NAMA_POLIKLINIK 1 Bani 01 Gigi 2 Anna 03 Kandungan 3 Nico 04 THT 4 Damar 07 Penyakit Dalam 5 Sarah Syaraf 6 Hendra NULL 09 NULL
CARA RIGHT JOIN 1. SELECT a. no_antrian, a. nama, b. kode_poliklinik, b. nama_poliklinik 2. FROM pasien AS a 3. RIGHT JOIN poliklinik AS b 4. ON a. kode_poliklinik = b. kode_poliklinik
HASIL RIGHT JOIN NO_ANTRIAN NAMA KODE_POLIKLINIK NAMA_POLIKLINIK 1 2 3 4 5 NULL NULL 01 03 04 07 09 02 05 06 08 10 Bani Anna Nico Damar Sarah NULL NULL Gigi Kandungan THT Penyakit Dalam Syaraf Anak Mata Kulit & Kelamin Bedah Paru
CARA FULL JOIN 1. SELECT * FROM pasien FULL JOIN poliklinik USING(kode_polikilinik)
HASIL FULL JOIN KODE_POLIKLINIK NO_ANTRIAN NAMA_POLIKLINIK 01 1 Bani Gigi 03 2 Anna Kandungan 04 3 Nico THT 07 4 Damar Penyakit Dalam 09 5 Sarah Syaraf
- Slides: 22