A. Kompetensi Dasar
B. Indikator Pencapaian
Kompetensi
1.
Menerapkan perintah select untuk mengakses multit able dalam
basis data
2.
Membuat perintah select multitable dengan CLI
C. MATERI PEMBELAJARAN
1. Select multitable
D. TUJUAN PEMBELAJARAN
1.
Siswa dapat mengenal, memahami
dan menerangkan tentang perintah
select untuk mengakses multitable dalam basis data
2.
Siswa dapat membuat
perintah select untuk mengakses multitable dalam basis data
E. Alat dan Bahan
1.
Laptop/
Komputer
2.
XAMPP
3.
phpmyadmin
F. Prosedur Praktikum
1.
Awali
setiap aktivitas dengan do’a, semoga berkah dan mendapat kemudahan.
2.
Pahami
tujuan dan dasar teori dengan baik dan benar.
3. Siswa telah membaca dan
mempelajari materi praktikum sebelumnya
4. Instruktur menerangkan dan menjelaskan teori dan cara kerja
5.
Siswa mempraktikan percobaan latihan dan
tugas-tugas praktikum dengan baik, sabar, mandiri, dan jujur.Tanyakan kepada
guru pembimbing apabila ada hal-hal yang kurang jelas atau yang belum dipahami.
6.
Laporkan
kepada guru pembimbing jika pelaksanaan praktikum sudah selesai.
7.
Laporan
percobaan praktikum dan tugas praktikum di buat dalam satu file
jobsheet.(dikumpulkan di classroom basis data)
a. Siswa yang belum mengumplkan job sheet
Pretest, maka konsekuensinya job sheet Join tidak akan di nilai.
8.
Perhatikan
faktor-faktor Keselamatan dan Kesehatan Kerja (K3) selama melaksanakan kegiatan
praktikum. Dilarang bercanda yang berlebihan atau melakukan aktivitas yang tidak berhubungan dengan kegiatan praktikum.
1.
Dasar
Teori
a. Join merupakan sebuah konsep di dalam pengolahan data pada database.
Konsep ini menggabungkan dua buah tabel atau lebih sehingga menghasilkan sebuah
tabel baru yang bersifat temporary atau sementara.
Melalui tabel baru ini akan dapat diperoleh hubungan tiap data pada tabel-tabel yang digabungkan. Tabel baru ini disebut sebagai joined table.
b.
Macam-Macam
Join
Pada MySQL
dikenal beberapa macam join yang dapat dikelompokkan menjadi dua, yaitu inner
join dan outer join. Inner join dapat dibagi kembali menjadi natural join dan cross
join. Sedangkan outer join dapat dibedakan menjadi left outer
join, right
outer join, dan full outer join.
1.
Inner
Join dan Natural Join
Inner join dan natural join merupakan join
yang digunakan untuk menemukan persimpangan atau perpotongan antara dua buah
tabel yang di-join-kan. Join ini akan mengembalikan atau menampilkan data-data yang saling berpasangan
di anatara kedua
buah tabel. Syntax
untuk inner join dan natural join adalah sebagai berikut:
Cara #1. Inner Join dengan WHERE.
Penggabungan dengan klausa WHERE
memiliki bentuk umum sebagai berikut:
SELECT tabel1.*, tabel2.* FROM
tabel1, tabel2 WHERE tabel1.PK=tabel2.FK;
Cara #2. Inner Join dengan
klausa INNER JOIN.
Berikut ini bentuk umumnya:
SELECT tabel1.*, tabel2.* FROM
tabel1 INNER JOIN tabel2 ON tabel1.PK=tabel2.FK;
2.
Cross
Join
Cross join merupakan inner join dengan seluruh kondisi join
(tidak hanya data yang berpasangan) dianggap bernilai true. Sesuai
dengan namanya, join ini akan mengembalikan semua kemungkinanpasangan
atau persilangan data pada tabel yang satu dengan data pada tabel yang lainnya.
Syntax untuk cross join adalah sebagai berikut:
SELECT nama_kolom
FROM tabel_1 CROSS JOIN tabel_2;
3. Left Outer Join dan Right Outer Join
Left outer
join merupakan join yang akan mengembalikan seluruh data pada
tabel sebelah kiri (left table) yang memiliki pasangan pada tabel
sebelah kanan (right table) ditambah data-data pada left table
yang tidak memiliki pasangan pada tabel sebelah kanan. Sedangkan right outer
join sebaliknya.Untuk data-data yang tidak memiliki pasangan, pada joined
table yang dihasilkan data-data tersebut akan dipasangkan dengan data null.
Syntax untuk left outer join dan right outer join adalah sebagai
berikut:
SELECT nama_kolom
FROM tabel_kiri LEFT OUTER JOIN tabel_kanan
ON tabel_kiri.nama_kolom = tabel_kanan.nama_kolom;
SELECT nama_kolom
FROM tabel_kiri RIGHT OUTER JOIN tabel_kanan
ON tabel_kiri.nama_kolom
= tabel_kanan.nama_kolom;
4. Full Outer Join
Full outer
join merupakan kombinasi dari hasil left outer join dengan right
outer join. MySQL tidak mengenal
klausa full outer join. Oleh karena itu, untuk mendapatkan joined
table hasil dari full outer join digunakan klausa atau operator
UNION untuk menggabungkan hasil query yang menggunakan left outer
join dengan hasil query yang menggunakan right outer join. Syntax
untuk full outer join adalah sebagai berikut:
SELECT nama_kolom
FROM tabel_kiri LEFT OUTER JOIN tabel_kanan
ON tabel_kiri.nama_kolom = tabel_kanan.nama_kolom
UNION
SELECT nama_kolom
FROM tabel_kiri RIGHT OUTER
JOIN tabel_kanan
ON tabel_kiri.nama_kolom = tabel_kanan.nama_kolom;
c.
Penggunaan
Operator IS NULL
Seperti yang
telah dijelaskan pada bagian outer join, data yang diperoleh dari suatu query
dapat mengandung nilai null. Untuk mem-filter query agar hanya
menampilka data yang mengandung nilai null saja dapat menggunakan
operator IS NULL pada klausa WHERE.
d.
Penggunaan
Operator DISTINCT
Pada saat
melakukan pengambilan data di dalam database terkadang dijumpai suatu
kondisi dimana data yang sama diperoleh atau muncul lebih dari satu baris.
Untukmenghilangkan kemunculan data yang berulang-ulang ini dapat menggunakan
operator DISTINCT pada klausa SELECT. Dengan menggunakan operator ini,
data yang sama hanya akan muncul satu kali atau hanya pada satu baris.
e.
Penggunaan
Operator AS
Operator AS
berfungsi untuk mengubah nama kolom atau field pada suatu hasil query.
Perubahan nama kolom ini hanya berlaku pada hasil query tersebut, tidak
mengubah nama kolom asalnya.
2. Latihan
Gunakanlah
kembali database akademik_sekolah yang pernah siswa buat pada latihan meteri
terdahulu.
a. Inner Join dan Natural Join
Inner join maupun natural join
dapat digunakan untuk mengetahui data siswa sekaligus nilai yang diperolehnya.
Jalankan query berikut dan perhatikan hasilnya:
Cara 1 :

Cara 2 :

SOAL :
Perbedaan
apakah yang Anda temukan antara hasil dari query 1 dibandingkan dengan hasil
dari query 2?
b. Cross Join
Jalankanlah query berikut:

SOAL :
Bandingkan
hasil query tersebut dengan query yang menggunakan INNER JOIN dan
NATURAL JOIN! Perbedaan apa yang Anda temukan?
c.
Left
Outer Join dan Right Outer
Join
Jalankanlah query berikut dan perhatikan hasilnya:

Jalankan pula
query berikut dan perhatikan kembali hasilnya:

SOAL :
Perbedaan dan
persamaan apakah yang Anda temukan dari hasil kedua query tersebut?
Adakah data
dengan nilai null yang muncul di sana? Apakah yang menyebabkan data dengan
nilai null tersebut muncul?
d. Full Outer Join

SOAL :
Perbedaan dan
persamaan apakah yang Anda temukan dari hasil kedua query tersebut?
0 Comments:
Posting Komentar