You are on page 1of 13

LAPORAN HASIL PRAKTIKUM BASIS DATA I

NIM NAMA JADWAL PRAKTIKUM ASISTEN MODUL KE TOPIK : C1155201097 : Sunaryo M.Aminuddin : -----------------------------: -----------------------------: 3 ( TIGA ) : 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 1. Sampul depan 2. Landasan teori 3. Langkah penyelesaian & pembahasan tugas praktikum 4. Kesimpulan 5. Daftar pustaka Total nilai Max 5 30 30 25 10 100 Penilai, Nilai

-----------------------------Jurusan Teknik Informatika Stmik Palangka Raya 2012

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 A B C Table 2 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_name1 INNER JOIN table_name2 ON 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 Informatika Stmik Palangka Raya 2012

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_pesan FROM pelanggan, pesan WHERE 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 terdapat satu pelanggan yang tidak ditampilkan yaitu yang memiliki id pelanggan P0003. Pelanggan tersebut tidak ditampilkan karena belum pernah melakukan transaksi.

Jurusan Teknik Informatika Stmik Palangka Raya 2012

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 digunakan 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_name1 LEFT JOIN table_name2 ON table_name1.field_name = table_name2.field_name

Contoh perintah SQL:


SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan, pesan.tgl_pesan FROM pelanggan LEFT JOIN pesan ON 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 Informatika Stmik Palangka Raya 2012

Bentuk umum left join adalah :


SELECT field_name(s) FROM table_name1 LEFT JOIN table_name2 ON table_name1.field_name = table_name2.field_name

Contoh perintah SQL:


SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan, pesan.tgl_pesan FROM pelanggan RIGHT JOIN pesan ON 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_pesan FROM pelanggan p RIGHT JOIN pesan s ON p.id_pelanggan=s.id_pelanggan;

Jurusan Teknik Informatika Stmik Palangka Raya 2012

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 Informatika Stmik Palangka Raya 2012

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 Informatika Stmik Palangka Raya 2012

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 Informatika Stmik Palangka Raya 2012

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 Informatika Stmik Palangka Raya 2012

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 Informatika Stmik Palangka Raya 2012

BAB III KESIMPULAN

Dengan menggunakan program SQL ini, kita dapat mengenal SQL dan perintahperintah 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 Informatika Stmik Palangka Raya 2012

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 Informatika Stmik Palangka Raya 2012

BAB IV DAFTAR PUSTAKA

Modul Praktikum Basis Data 1. Modul III DATA MANIPULATION LANGUAGE. Teknik Informatika : Universitas Palangkaraya.

http://bahanajarku.wordpress.com

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

Jurusan Teknik Informatika Stmik Palangka Raya 2012

You might also like