Modul 3 - Join
Modul 3 - Join
TIM PENYUSUN
1
ATURAN TATA TERTIB
Praktikum
2
11. Praktikan tidak diperbolehkan browsing tanpa perizinan dari asisten
laboratorium.
12. Untuk form susulan akan diverifikasi oleh pihak Laboratorium dan akan
diumumkan kembali siapa yang berhak mengikuti susulan praktikum.
13. Praktikan dapat melakukan komplain nilai maksimal 3 hari setelah nilai
dikeluarkan (per modul).
14. Segala pengumuman akan diumumkan ke media social laboratorium, bila
salah satu praktikan tidak mengetahui pengumuman maka nilai akhir satu
kelas akan dikurangi sebesar 5 poin.
15. Dilarang untuk membawa makanan dan minuman ke dalam integra lab.
16. Pengisian feedback wajib dilakukan oleh semua praktikan untuk dapat
melihat nilai praktikum.
17. Tidak mengikuti praktikum tanpa perizinan maka nilai semua modul = 0
Perizinan
Tukar Jadwal
3
Susulan
4
DAFTAR ISI
5
JOIN
A. Tujuan Praktikum
a. Praktikan mampu memahami konsep join
b. Praktikan mampu memahami jenis-jenis join antar tabel.
c. Praktikan mampu memahami dan mengimplementasikan query dengan
multitabel dengan menggunakan join.
B. Perlengkapan Praktikum
a. Modul Praktikum Basis Data 2017
b. SQL Server
c. Microsoft SQL Server Management Studio
C. Landasan Teori
Join merupakan operasi yang terdapat pada SQL yang dapat digunakan untuk
memperoleh data hasil query yang didapat dari dua tabel atau lebih.
Penggabungan tabel-tabel tersebut harus melibatkan suatu kondisi yang dapat
membentuk hubungan antar satu tabel dengan tabel lainnya. Kondisi
penggabungan ini dinamakan join condition.
Secara garis besar, terdapat dua jenis join, yaitu inner join dan outer join.
a. Inner Join
Inner join merupakan join yang terjadi karena terdapat kesamaan data
antara satu tabel dengan tabel lainnya. Berikut ini merupakan ilustrasi
dari inner join.
6
Penjelasan:
SELECT – Query untuk mengambil data dari nama_kolom1 yang berasal
dari nama_tabel 1 dan nama_kolom2 dari nama_tabe 2. Penambahan
karakter a dan b pada kedua contoh di atas merupakan alias. Alias
berfungsi sebaga nama pengganti sebuah tabel. Umumnya digunakan
untuk mempermudah penyebutan nama tabel yang panjang, sehinga
syntax menjadi lebih singkat.
FROM – Diisikan dengan nama tavel yang digunakan pada query. Contoh
di atas akan mengambil data dari tabel nama_table1 (alias a).
JOIN – Di sini akan dilakukan join atau penggabungan dengan
nama_table2 (alias b).
ON – Baris ini terdapat kondisi yakni ON a.nama_kolom1 =
b.nama_kolom2. Artinya, nilai pada nama_kolom1 dari tabel a sama
dengan nilai pada nama_kolom2 dari tabel b. Kondisi tersebut
memungkinkan kita mendapatkan hasil query berupa data yang sama-
sama ada pada kedua tabel tersebut. Umumnya data tersebut merupakan
salah satu kolom yang merupakan foreign key di satu tabel dan primary
key di tabel lainnya.
b. Outer Join
Operasi outer join bertujuan untuk melakukan join anta dua tabel, di
mana data yang tidak memiliki pasangan pada salah satu tabel akan
ditampilkan
a. Left Outer Join
Left outer join merupakan join antara dua table yang
mengembalikan hasil dengan menampilkan semua isi data pada
table disisi kiri,meskipun terdapat value yang berisi nilai NULL di
table sebelah kanan.
7
Select a.nama_kolom1, b.nama_kolom2
FROM nama_tabel1 a
LEFT OUTER JOIN nama_tabel2 b
ON a.nama_kolom1 = b.nama_kolom2
8
SELECT a.nama_kolom1, b.nama_kolom2
FROM nama_tabel1 a
FULL OUTER JOIN nama_tabel2 b
ON a.nama_kolom1 = b.nama_kolom2
9
D. Studi Kasus
Pada suatu database terdapat tabel seperti berikut.
Tabel Suppliers
supplier_id supplier_name
10000 IBM
10001 Hewlett Packard
10002 Microsoft
10003 NVIDIA
Tabel Orders
Kedua tabel ini memiliki relasi, di mana kolom supplier_id pada tabel
Orders merujuk kepada kolom supplier_id pada tabel Suppliers.
10
E. Pembahasan
a. Untuk menampilkan supplier_id, supplier_name, serta order_date
kita dapat menggunakan inner join (natural join). Syntax-nya adalah
sebagai berikut.
SELECT a.supplier_id, a.supplier_name, b.order_date
FROM suppliers a
INNER JOIN orders b
ON a.supplier_id = b.supplier_id;
11
F. Soal Latihan
Terdapat sebuah database Universitas dengan model relasional seperti
berikut.
Tabel Mahasiswa
NIM Nama Kelas Jurusan
1202144218 Rosa SI-38-02 Sistem Informasi
1202144228 Jay SI-38-06 Sistem Informasi
1202144238 Nana SI-38-01 Sistem Informasi
12
Tabel Mata Kuliah
Kode_Matkul Nama_Matkul Beban_SKS
ISG3K3 Algoritma 3
IEG3J3 Kalkulus 3
IFG4L4 Basis Data 4
IFG4M4 Fisika 3
Tabel Perkuliahan
a. NIM, nama, dan nilai dari mahasiswa yang mengambil mata kuliah
tertentu.
b. Nama mahasiswa dan kode matkul yang diambil dengan
menggunakan left outer join, di mana tabel mahasiswa
merupakan tabel kiri.
c. NIM mahasiswa dan nama matkul dengan menggunakan right
outer join, di mana tabel mata kuliah merupakan tabel kanan.
d. Nama mahasiswa, nama matkul, dan nilai dari mahasiswa yang
mengambil mata kuliah tertentu.
e. Semua Nama mahasiswa, nama matkul dan nilai.
13
REFERENSI
14