Вы находитесь на странице: 1из 14

LAPORAN PRAKTIKUM

DESIGN DATABASE
MODUL 6
OPERATOR JOIN

Dosen :
Agus Eko M, SKom

OLEH:
201410370311081
Muh. Fikri Sangaji
3B

LABORATORIUM REKAYASA PERANGKAT LUNAK


PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MALANG
Contents

DESKRIPSI DAN TUJUAN PRAKTIKUM ........................................................................................................... 3


PERANGKAT LUNAK ...................................................................................................................................... 3
TEORI PENUNJANG ....................................................................................................................................... 4
PROSEDUR PELAKSANAAN ............................................................................................................................ 5
IMPLEMENTASI DAN HASIL PRAKTIKUM ...................................................................................................... 6
KESIMPULAN ............................................................................................................................................... 14
DESKRIPSI DAN TUJUAN PRAKTIKUM

Deskripsi Praktikum

Deskripsi praktikum kali ini yang membahas tentang Operator Join itu pada dasarnya user harus
bisa menggabungkan (Join) satu atau banyak tabel yang nantinya akan menampilkan sesuai
kebutuhan dengan menggunakan beberapa Operator Join tersebut.

Tujuan Praktikum

1. Mengenal dan memahami konsep dasar operator join


2. Memahami dan mengimplementasikan Inner Join, Equi-Join, Natural Join, Cross Join, Left
Outer Join, Right Outer Join, Full Outer Join, Self Join

PERANGKAT LUNAK

1. Komputer Set (memory >= 1GB, CPU >= PIV)


2. Oracle XE
3. Command Prompt (sqlplus)
TEORI PENUNJANG

Oprator join adalah mengambil dua relasi dan mengembalikan nilai yang berasal dari
relasi tersebut, Operasi ini biasanya menjadi expresi subquery dari klausa FROM,. Setiap variasi
dari operasi dalam SQL terdiri dari tipe join dan kondisi join. Kondisi join mendifinisikan record
dari dua relasi yang sama, dan atribut apa yang muncul dari hasil join. Tipe join mendefinisikan
bagaimana record dari setiap relasi yang tidak sama dengan record lain dalam relasi lainnya.

Macam macam Oprator Join

INNER JOIN
Menghasilkan table baru dengan menggabungkan nilai-nilai kolom dari dua tabel.

EQUI-JOIN
Join yang berbasis perbandingan equal.

NATURAL JOIN
Merupakan operasi equijoin dengan memperlakukan nama-nama kolom yang sama sebagai
kolom penghubung antara table.

CROSS JOIN
Merupakan perkalian kartesian dalam pemakaian klausa FROM.

LEFT OUTER JOIN


Merupakan penggabungan table dimana hasil penggabungan table A dan B adalah hasil inner
join kedua table tersebut ditambah dengan record dari tabel yang kiri (dalam hal ini adalah table
A).

RIGHT OUTER JOIN


Merupakan kebalikan dari left outer join dimana hasil penggabungan table A dan B selalu
record tabel yang kanan (dalam hal ini adalah table B).

FULL OUTER JOIN


Merupakan kombinasi dari left outer join dan right outher join dimana hasil penggabungan table
A dan B jika ada NULL selalu di tampilkan baik kiri maupun kanan pada table.

SELF JOIN
Merupakan penggabungan atau join sebuah table dengan table itu sendiri
PROSEDUR PELAKSANAAN

Login ke Database
Login menggunakan username dan password yang telah dibuat pada saat penginstalan Oracle
Database di PC/Laptop user.

Mengecek Table dan Data


Disini user mengecek apakah table dan data dari Studi Kasus perkelompok masih ada di Oracle
Database atau tidak. Bukalah halaman Object Browser Browser>Tables. Disini user
melihat/mengecek Table dan juga data-data dari table tersebut.

Penyelesaian Tugas Praktikum


Bukalah halaman SQL Command Home>SQL>SQL Commands. Disini user
mengimplementasikan atau menyelesaikan problem dari soal-soal praktikum modul 6.

Memasukkan perintah sesuai kebutuhan user :


Operasi Join

1. INNER JOIN
2. EQUI-JOIN
3. NATURAL JOIN
4. CROSS JOIN
5. LEFT OUTER JOIN
6. RIGHT OUTER JOIN
7. FULL OUTER JOIN
8. SELF JOIN
IMPLEMENTASI DAN HASIL PRAKTIKUM

Table Studi Kasus (Koperasi Simpan Pinjam)


Nasabah

Simpanan

Pinjaman
CROSS JOIN

SELECT * FROM NASABAH CROSS JOIN PINJAMAN

Dari tabel Nasabah telah mempunyai 5 data begitupun dari Pinjaman. Fungsi Cross Join disini
melakukan perkalian kertesian dalam pemakaian klausa FROM dari dua tabel tersebut, maka
mengeluarkan data sebanyak 25 dari dua tabel tersebut.

Output :
NATURAL JOIN

SELECT * FROM NASABAH NATURAL JOIN SIMPANAN

Kalau data antara tabel Nasabah dan Simpanan tidak mempunyai data sama (Foreign Key), maka
operasi dari Natural Join akan menampilkan No Data Found (tidak ada data). Karena disini
operasi Natural Join akan berjalan dengan memperlakukan nama-nama kolom yang sama sebagai
kolom penghubung antara tabel (Foreign Key).

Ouput :
INNER JOIN (USING)

SELECT N.NO_KTP, N.NAMA, S.JENIS_SIMPANAN, S.TGL_SIMPANAN


FROM NASABAH N INNER JOIN SIMPANAN S USING (ID_NASABAH)
WHERE N.NAMA NOT LIKE '%FIKRI%'
ORDER BY N.NO_KTP

Disini saya memakai column ID_NASABAH yang ingin di join antara tabel Nasabah dan
Simpanan. Jadi klausa Using akan jalan kalau ada lebih dari satu kolom yang namanya sama pada
tabel yang akan di di-join. Klausa Using juga digunakan untuk menentukan nama kolom yang
akan digunakan sebagai kondisi join.

Contoh :
SELECT N.NO_KTP, N.NAMA, // Kolom yg ingin ditampilkan dari tabel Nasabah

S.JENIS_SIMPANAN, S.TGL_SIMPANAN Dan Simpanan

FROM NASABAH N INNER JOIN SIMPANAN S // Inisialisasi dari tabel Nasabah N dan Simpanan S

Dgn memakai Inner join antara 2 tabel tersebut


USING (ID_NASABAH) // Klausa USING menggunakan column yang sama

diantara 2 tabel tersebut (ID_NASABAH)


WHERE N.NAMA NOT LIKE '%FIKRI%' // Memakai kondisi yang bukan bernama FIKRI

ORDER BY N.NO_KTP // Pengurutan data dari data yang terkecil di kolom

NO_KTP dari tabel Nasabah N

Output :
INNER JOIN (ON)

SELECT N.NO_KTP, N.NAMA, S.JENIS_SIMPANAN, S.BESAR_SIMPANAN


FROM NASABAH N INNER JOIN SIMPANAN S
ON (N.ID_NASABAH = S.ID_NASABAH)

Pada penggunaan klausa ON ini memungkinkan dilakukan join pada dua tabel walaupun pada
kedua tabel tersebut tidak ada kolom yang namanya sama untuk dijadikan sebagai kondisi join
tetapi data pada kolom tersebut bersesuaian sehingga memungkinkan untuk dilakukan join. Maka
dari itu butuh inisialisasi dari kedua tabel yang mempunyai nama kolom yang sama untuk
melakukan proses join.

Contoh :
SELECT N.NO_KTP, N.NAMA, // Kolom yang yang ingin di tampilkan

S.JENIS_SIMPANAN, S.BESAR_SIMPANAN dari tabel Nasabah dan Simpanan

NASABAH N INNER JOIN SIMPANAN S // Inisialisasi dari tabel Nasabah N & Simpanan N

Dgn memakai Inner join antara 2 tabel tersebut


ON (N.ID_NASABAH = S.ID_NASABAH) // Klausa ON menggunakan column yang sama diantara

2 tabel tersebut (ID_NASABAH), hampir sama dengan


dengan klausa USING, namun klausa ON hanya perlu
di Inisialisasikan dari kedua tabel tersebut

Output :
LEFT OUTER JOIN

SELECT * FROM SIMPANAN S LEFT OUTER JOIN NASABAH N


ON S.ID_SIMPANAN = N.ID_NASABAH

Operasi Left Outer Join akan menampilkan semua isi tabel sisi kiri, walaupun data di pasangan
joinnya yang disisi kanan nilainya tidak sama ataupun berisi null.

Contoh ouput dibawah ini yang menampilkan tabel Simpanan di sebelah Kiri, yang data di tabel
pasangan joinnya (Nasabah) tidak sama (tidak ada data)

RIGHT OUTER JOIN

SELECT * FROM NASABAH N RIGHT OUTER JOIN SIMPANAN S


ON N.ID_NASABAH = S.ID_SIMPANAN

Hampir sama dengan Left Outer Join. Operasi Right Outer Join akan menampilkan semua isi
tabel sisi kanan, walaupun data di pasangan joinnya yang disisi kanan nilainya tidak sama ataupun
berisi null.

Contoh ouput dibawah ini yang menampilkan tabel Simpanan di sebelah Kanan, yang data di
tabel pasangan joinnya (Nasabah) tidak sama (tidak ada data)
FULL OUTER JOIN

SELECT * FROM NASABAH N FULL OUTER JOIN SIMPANAN S


ON N.ID_NASABAH = S.ID_SIMPANAN

Full Outer Join adalah kombinasi dari operasi Left Outer Join dan Right Outer Join yang akan
menampilkan semua isi tabel sisi kanan maupun sisi kiri, walaupun data di pasangan joinnya yang
disisi kanan dan kiri nilainya tidak sama ataupun berisi null.

Contoh ouput dibawah ini yang menampilkan tabel Nasabah di sebelah Kiri dan tabel Simpanan
di sebelah Kanan, yang data di tabel pasangan joinnya (Nasabah / Simpanan) tidak sama (tidak
ada data)
SELF JOIN

SELF JOIN adalah bentuk kondisi join yang terjadi pada table diri sendiri (recursive).

Contoh Query dibawah ini yang Ingin menampilkan data di Besar_Pinjaman(S) yang mempunyai
kondisi lebih kecil sama dengan (<=) Besar_Pinjaman(P), tentunya akan menampilkan data
Besar_Pinjaman (S) dari yang bernilai terkecil sampai terbesar dari table yang sama yaitu
Pinjaman, dan di inisialisasikan menjadi Pinjaman(S) dan Pinjaman(P).

SELECT S.ID_PINJAMAN, S.BESAR_PINJAMAN, P.TGL_PINJAMAN, P.BESAR_PINJAMAN


FROM PINJAMAN S, PINJAMAN P
WHERE S.BESAR_PINJAMAN <= P.BESAR_PINJAMAN

Output :
KESIMPULAN

Dari praktikum kali ini dapat disimpulkan bahwa Operasi Join akan berjalan, kalau Tabel
1 dan Tabel 2 mempunyai Column dan data yang sama diantara 2 tabel tersebut. Yang biasa
dikatakan sebagai Primary Key di tabel 1 dan Primary Key di tabel 1 tersebut di jadikan Foreign
Key di tabel 2.

Salam..

Вам также может понравиться