LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

20
LAPORAN HASIL PRAKTIKUM BASIS DATA I NIM : C1155201097 NAMA : Sunaryo M.Aminuddin JADWAL PRAKTIKUM : ------------------------------ ASISTEN : ------------------------------ MODUL KE : 3 ( TIGA ) TOPIK : Data Manipulation Language (DML) : Join, Union, dan Grouping TUJUAN PEMBELAJARAN : 1. Menampikan data dari dua table atau lebih dengan menggunakan perintah right join dan left join. 2. Memahami perbedaan right join dan left join. 3. Menampilkan gabungan data dari dua table atau lebih dengan menggunakan perintah union. 4. Menampilkan data yang dikelompokkan sesuai kolom tertentu. 5. Menggunakan fungsi-fungsi yang biasa dipergunakan bersama perintah grouping (count, max, min, avg). NILAI Komponen Max Nilai 1. Sampul depan 5 2. Landasan teori 30 3. Langkah penyelesaian & pembahasan 30 Jurusan Teknik Informatika Stmik Palangka Raya 2012

Transcript of LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

Page 1: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

LAPORAN HASIL PRAKTIKUM

BASIS DATA I

NIM : C1155201097

NAMA : Sunaryo M.Aminuddin

JADWAL PRAKTIKUM : ------------------------------

ASISTEN : ------------------------------

MODUL KE : 3 ( TIGA )

TOPIK : Data Manipulation Language (DML) :

Join, Union, dan Grouping

TUJUAN PEMBELAJARAN :

1. Menampikan data dari dua table atau lebih dengan menggunakan perintah right join

dan left join.

2. Memahami perbedaan right join dan left join.

3. Menampilkan gabungan data dari dua table atau lebih dengan menggunakan perintah

union.

4. Menampilkan data yang dikelompokkan sesuai kolom tertentu.

5. Menggunakan fungsi-fungsi yang biasa dipergunakan bersama perintah grouping

(count, max, min, avg).

NILAI

Komponen Max Nilai

1. Sampul depan 5

2. Landasan teori 30

3. Langkah penyelesaian & pembahasan tugas praktikum 30

4. Kesimpulan 25

5. Daftar pustaka 10

Total nilai 100

Penilai,

------------------------------Jurusan Teknik Informatika

Stmik Palangka Raya2012

Page 2: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

BAB I

LANDASAN TEORI

JOIN

Join adalah perintah untuk menampilkan data dari dua atau lebih table yang

memiliki irisan atau kesamaan kolom. Kolom yang beririsan tidak selalu harus memiliki

nama kolom yang sama, yang terpenting adalah kesamaan esensi isi kolom. Join lazim

(namun tidak selalu) digunakan untuk menampilkan data secara lengkap pada table yang

mengacu pada table lain sebagai foreign key.

Table 1 Table 2

A B C D E C G

Hasil join Table1 dan Table2, dengan kolom C sebagai kolom irisan :

A B C D E G

1. INNER JOIN

Inner join digunakan untuk menggabungkan dua atau lebih tabel yang dijadikan sebagai referensi

join memiliki nilai yang sama pada tabel sebelah kiri dan pada tabel sebelah kanan. Dengan inner

join, tabel akan digabungan dua arah, sehingga tidak ada data yang NULL di satu sisi.

Bentuk umum inner join adalah :

SELECT column_name(s)FROM table_name1INNER JOIN table_name2ON table_name1.column_name = table_name2.column_name

Sebagai contoh, kita akan menggabungkan tabel pelanggan dan pesan dimana kita akan

menampilkan daftar pelanggan yang pernah melakukan pemesanan (transaksi). Misalkan

isi tabel pelanggan dan pesan adalah sebagai berikut :

Jurusan Teknik InformatikaStmik Palangka Raya

2012

Page 3: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

Tabel pelanggan (hanya ditampilkan field id_pelanggan, nm_pelanggan dan email)

Tabel pesan.

Berikut ini perintah SQL untuk menggabungkan tabel pelanggan dan pesan:

SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan, pesan.tgl_pesanFROM pelanggan, pesanWHERE pelanggan.id_pelanggan=pesan.id_pelanggan;

Hasilnya sebagai berikut:

Pada hasil perintah query di atas terlihat bahwa terdapat 5 (lima) transaksi yang dilakukan

oleh 3 (tiga) orang pelanggan. Jika kita lihat kembali isi tabel pelanggan di atas, maka ter-

dapat satu pelanggan yang tidak ditampilkan yaitu yang memiliki id pelanggan P0003.

Pelanggan tersebut tidak ditampilkan karena belum pernah melakukan transaksi.

Jurusan Teknik InformatikaStmik Palangka Raya

2012

Page 4: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

2. OUTER JOIN

Dengan outer join, tabel akan digabungkan satu arah, sehingga memungkinkan ada data

yang NULL (kosong) di satu sisi. Sebagai contoh, kita akan menggabungkan tabel

pelanggan dan pesan dimana kita akan menampilkan daftar pelanggan yang pernah

melakukan pemesanan (transaksi).

Outer join terbagi menjadi 2 yaitu left join dan right join.

a. LEFT JOIN

Left join digunakan untuk menggabungkan dua atau lebih tabel dimana field yang di-

gunakan sebagai referensi pada tabel sebelah kiri akan tetap ditampilkan walaupun

tidak ada dalam tabel sebelah kanan.

Bentuk umum left join adalah :

SELECT field_name(s)FROM table_name1LEFT JOIN table_name2ON table_name1.field_name = table_name2.field_name

Contoh perintah SQL:

SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan, pesan.tgl_pesanFROM pelanggan LEFT JOIN pesanON pelanggan.id_pelanggan=pesan.id_pelanggan;

Hasilnya:

b. RIGHT JOIN

Rightjoin digunakan untuk menggabungkan dua atau lebih tabel dimana semua field

yang ada pada tabel sebalah kanan akan ditampilkan walapun tidak memiliki nilai

yang sama dengan referensi yang ada dalam tabel sebelah kiri.

Jurusan Teknik InformatikaStmik Palangka Raya

2012

Page 5: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

Bentuk umum left join adalah :

SELECT field_name(s)FROM table_name1LEFT JOIN table_name2ON table_name1.field_name = table_name2.field_name

Contoh perintah SQL:

SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan, pesan.tgl_pesanFROM pelanggan RIGHT JOIN pesanON pelanggan.id_pelanggan=pesan.id_pelanggan;

Hasilnya :

JOIN MENGGUNAKAN TABEL ALIAS

Tujuan penggunaan tabel alias adalah untuk menyederhanakan query. Contoh query

penggunaan join dengan tabel alias :

SELECT p.id_pelanggan, p.nm_pelanggan, s.id_pesan, s.tgl_pesanFROM pelanggan p RIGHT JOIN pesan sON p.id_pelanggan=s.id_pelanggan;

Jurusan Teknik InformatikaStmik Palangka Raya

2012

Page 6: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

BAB II

LANGKAH PENYELESAIAN DAN

PEMBAHASAN TUGAS PRAKTIKUM

A. Langkah kerja

Dalam pelaksanaan praktikum ini, ada beberapa langkah yang harus dilakukan sesuai

dengan modul yang telah ditetapkan yaitu :

1. Langkah pertama adalah mengerjakan soal pre-test.

2. Langkah kedua adalah membuka program Wamp Server.

3. Langkah ketiga adalah menjalankan program SQLyog.

4. Langkah keempat adalah mengerjakan tugas praktikum.

B. Pembahasan Tugas Praktikum

1. Dengan right join, tampilkan data penjualan album! (kolom yang ditampilkan :

nama album, penyanyi, jumlah quantity terjual)

Koding :

Output :

Pembahasan :

select a.judul as ‘nama album’, penyanyi, sum(d.qty) as ‘jumlah quantity

terjual’

select a.judul merupakan perintah untuk menampilkan kolom judul. as ‘nama

album’ merupakan perintah untuk membuat tabel alias dengan mengubah nama

kolom judul menjadi nama album tetapi tidak merubah koding, karena tabel alias

hanya menampilkan tabel yang tersedia menggunakan nama lain. Penyanyi

merupakan kolom yang akan ditampilkan setelah kolom judul. sum(d.qty)

Jurusan Teknik InformatikaStmik Palangka Raya

2012

Page 7: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

merupakan operasi matematika, berfungsi untuk menjumlahkan data yang ada

pada kolom qty. As ‘jumlah quantity terjual’ merupakan perintah untuk membuat

tabel alias dengan mengubah nama kolom penjumlahan qty menjadi jumlah

quantity terjual tetapi tidak merubah koding, karena tabel alias hanya

menampilkan tabel yang tersedia menggunakan nama lain. Huruf a dan d

merupakan sebuah simbol untuk membedakan berasal dari tabel mana.

From album a right join detail_penjualan d

From album menunjukkan bahwa kolom yang akan ditampilkan berasal dari tabel

album. Right join merupakan perintah untuk menggabungkan 2 tabel, dimana

semua field yang ada pada tabel sebelah kanan akan ditampilkan walaupun tidak

memiliki nilai yang sama dengan referensi yang ada pada tabel sebelah kiri.

detail_penjualan merupakan tabel yang akan digabungkan dengan tabel album.

Huruf a dan d merupakan simbol untuk mewakili tabel, a mewakili tabel album

dan b mewakili tabel detail_penjualan.

On a.kode_album = d.kode_album group by judul

On a.kode_album = d.kode_album merupakan syarat untuk melakukan join

dimana kode_album pada tabel album memiliki nilai yang sama dengan

kode_album pada tabel detail_penjualan. Group by judul merupakan perintah

untuk mengurutkan data berdasarkan kolom judul.

2. Dengan left join, tampilkan data penjualan album! (kolom yang ditampilkann

nama album, penyanyi, quantity terjual)

Koding :

Output :

Jurusan Teknik InformatikaStmik Palangka Raya

2012

Page 8: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

Pembahasan :

select a.judul as ‘nama album’, penyanyi, sum(d.qty) as ‘quantity terjual’

select a.judul merupakan perintah untuk menampilkan kolom judul. as ‘nama

album’ merupakan perintah untuk membuat tabel alias dengan mengubah nama

kolom judul menjadi nama album tetapi tidak merubah koding, karena tabel alias

hanya menampilkan tabel yang tersedia menggunakan nama lain. Penyanyi

merupakan kolom yang akan ditampilkan setelah kolom judul. sum(d.qty)

merupakan operasi matematika, berfungsi untuk menjumlahkan data yang ada

pada kolom qty. As ‘quantity terjual’ merupakan perintah untuk membuat tabel

alias dengan mengubah nama kolom penjumlahan qty menjadi jumlah quantity

terjual tetapi tidak merubah koding, karena tabel alias hanya menampilkan tabel

yang tersedia menggunakan nama lain. Huruf a dan d merupakan sebuah simbol

untuk membedakan berasal dari tabel mana.

From album a left join detail_penjualan d

From album menunjukkan bahwa kolom yang akan ditampilkan berasal dari tabel

album. Left join merupakan perintah untuk menggabungkan 2 tabel, dimana

semua field yang ada pada tabel sebelah kiri akan ditampilkan walaupun tidak

memiliki nilai yang sama dengan referensi yang ada pada tabel sebelah kanan.

detail_penjualan merupakan tabel yang akan digabungkan dengan tabel album.

Huruf a dan d merupakan simbol untuk mewakili tabel, a mewakili tabel album

dan b mewakili tabel detail_penjualan.

On a.kode_album = d.kode_album group by judul

On a.kode_album = d.kode_album merupakan syarat untuk melakukan join

dimana kode_album pada tabel album memiliki nilai yang sama dengan

kode_album pada tabel detail_penjualan. Group by judul merupakan perintah

untuk mengurutkan data berdasarkan kolom judul.

3. Tampilkan data album yang paling laris!

Koding :

Jurusan Teknik InformatikaStmik Palangka Raya

2012

Page 9: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

Output :

Pembahasan :

Select a.*, max(d.qty) as ‘jumlah terjual’

Select a.* merupakan perintah untuk menampilkan seluruh data pada tabel.

Max(d.qty) merupakan operasi matematika yang berfungsi untuk mengetahui nilai

terbesar dari kolom qty. As ‘jumlah terjual’ merupakan perintah untuk membuat

tabel alias dengan mengubah nama kolom pada kolom untuk mencari nilai

terbesar dari kolom qty menjadi jumlah terjual tetapi tidak merubah koding,

karena tabel alias hanya menampilkan tabel yang tersedia menggunakan nama

lain. Huruf a dan d merupakan sebuah simbol untuk membedakan berasal dari

tabel mana.

From album a inner join detail_penjualan d

From album menunjukkan bahwa kolom yang akan ditampilkan berasal dari tabel

album. Inner join merupakan perintah untuk menggabungkan 2 tabel, dimana

tabel yang dijadikan sebagai referensi join memiliki nilai yang sama pada tabel

sebelah kiri dan pada tabel sebelah kanan. detail_penjualan merupakan tabel yang

akan digabungkan dengan tabel album. Huruf a dan d merupakan simbol untuk

mewakili tabel, a mewakili tabel album dan b mewakili tabel detail_penjualan.

On a.kode_album = d.kode_album

On a.kode_album = d.kode_album merupakan syarat untuk melakukan inner join

dimana kode_album pada tabel album memiliki nilai yang sama dengan

kode_album pada tabel detail_penjualan. Apabila tidak memiliki nilai yang sama

maka inner join tidak dapat dilakukan.

4. Tampilkan data album yang termurah!

Koding :

Jurusan Teknik InformatikaStmik Palangka Raya

2012

Page 10: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

Output :

Pembahasan :

Select * from album

Select * from album merupakan perintah untuk menampilkan seluruh data pada

tabel album.

Where harga = (select min(harga) from album)

Perintah ini merupakan syarat dari data yang akan ditampilkan pada tabel album.

Data yang akan ditampilkan hanyalah data yang memiliki nilai harga terendah.

5. Tampilkan data penjualan album perhari

Koding :

Output :

Pembahasan :

Select kode_penjualan, tanggal, total as ‘penjualan perhari’ from penjualan

Select kode_penjualan merupakan perintah untuk menampilkan kolom

kode_penjualan. Tanggal merupakan kolom yang akan ditampilkan setelah kolom

kode_penjualan. Total as ‘penjualan perhari’ merupakan kolom yang akan

ditampilkan selanjutnya dengan mengganti nama total menjadi penjualan perhari.

From penjualan menunjukkan bahwa kolom-kolom yang akan ditampilkan

berasal dari tabel penjualan.

Jurusan Teknik InformatikaStmik Palangka Raya

2012

Page 11: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

BAB III

KESIMPULAN

Dengan menggunakan program SQL ini, kita dapat mengenal SQL dan perintah-

perintah dalam bahasa QSL. dan dapat mengambil kesimpulan dari program yang telah

kerjakan.

Right join digunakan untuk menampilkan semua data dari tabel sebelah kanan perintah

left join beserta pasangannya dari tabel sebelah kiri.

Left join digunakan untuk menampilkan semua data dari tabel sebelah kiri perintah left

join beserta pasangannya dari tabel sebelah kanan.

Max : Menghitung nilai terbesar dari nilai (nilai kolom, literal, parameter, atau nilai

hasil perhitungan) yang menggunakan dataset. Dataset dapat berupa tabel, suatu dataset

yang disaring, atau kelompok logika yang dihasilkan oleh klausa group by.

Syntax:

MAX([ALL] column_reference | DISTINCT column_reference)

Min : Fungsi MIN merupakan kebalikan dari fungsi max yaitu menghitung nilai

terkecil dari nilai (nilai kolom, literal, parameter, atau nilai hasil perhitungan) yang

menggunakan dataset. Deskripsi lainnya hampir sama dengan fungsi max.

Syntax:

MIN([ALL] column_reference | DISTINCT column_reference)

Sum : Menghitung total dari nilai (nilai kolom, literal, parameter, atau nilai hasil

perhitungan) yang menggunakan dataset. Deskripsi lainnya hampir sama dengan fungsi

max.

Syntax:

SUM([ALL] column_reference | DISTINCT column_reference)

From : Digunakan untuk menetapkan tabel yang datanya akan ditampilkan melalui

suatu pernyataan Select. Nilai klausa From adalah daftar nama tabel yang dipisahkan

oleh tanda koma. Nama alias suatu tabel yang didefinisikan dalam klausa From dapat

digunakan dalam suatu pernyataan.

Syntax:

FROM table_reference [, table_reference...]

Jurusan Teknik InformatikaStmik Palangka Raya

2012

Page 12: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

Group By : Mengelompokan data berdasarkan suatu kolom. Sebagai contoh, suatu

query dengan fungsi sum menghasilkan record tunggal yang merupakan total seluruh

nilai dari kolom dalam fungsi sum tersebut. Tetapi jika klausa group by ditambahkan,

maka fungsi sum melakukan penjumlahan sekali untuk masing-masing kelompok

record. Klausa group by diperlukan jika kolom aggregate dan non-aggregate

dimasukkan dalam pernyataan select yang sama.

Syntax:

GROUP BY column_reference [, column reference...]

As : perintah untuk memberikan nama lain pada kolom yang diinginkan menjadi nama

baru pada suatu tabel.

Syntax :

Select namakolomlama As namakolombaru From nama tabel;

Jurusan Teknik InformatikaStmik Palangka Raya

2012

Page 13: LAPORAN HASIL PRAKTIKUM MOD Data Manipulation Language (DML) Join,Union,Grouping

BAB IV

DAFTAR PUSTAKA

Modul Praktikum Basis Data 1. Modul I II DATA MANIPULATION LANGUAGE. Teknik

Informatika : Universitas Palangkaraya.

http://bahanajarku.wordpress.com

http://achmatim.net/2010/01/18/perintah-mysql-untuk-menampilkan-data-dari-beberapa-tabel/

Jurusan Teknik InformatikaStmik Palangka Raya

2012