Praktikum ke -3
3.1. TUJUAN
1. Mahasiswa mampu menggunakan perintah-perintah dasar pengambilan data tabel
(data retrieval).
2. Mahasiswa mampu memahami prosedur penggunaan operasi-operasi aritmetik,
logika, dan pembanding.
3. Mahasiswa mampu menggunakan
19
Panduan Praktikum Sistem Basis Data
Updates
Untuk mengubah nilai atribut dari suatu record dari suatu tabel, kita menggunakan perintah
UPDATE :
“expression” dapat berisi konstan (sebuah nilai baru), operasi string atau aritmetik atau sebuah
SQL query. Perhatikan bahwa nilai baru yang di-assign pada setiap kolom harus mengikuti tipe
data kolom tersebut.
Contoh 3.2
Mengubah nama KBI dan Topik Kajian dari TabelKBI
UPDATE Tabelkbi SET NamaKBI = 'Sains Komputasi', TopikKajian
= 'Optimasi Heuristik, Komputasi Cerdas, Pengolahan Citra'
WHERE KodeKBI = 1
Analog dengan statement INSERT, data tabel lain dapat diambil untuk pengisian nilai tabel baru
yang kita diinginkan. Pada kasus ini kita dapat menggunakan sebuah query pada ekspresinya.
Deletions
Seluruh atau record tertentu dapat dihapus dari sebuah tabel dengan menggunakan perintah
DELETE.
[WHERE <condition>];
20
Panduan Praktikum Sistem Basis Data
Jika keyword WHERE dihilangkan maka seluruh record yang ada dalam tabel tersebut akan
dihapus. Perintah lain untuk menghapus seluruh record adalah TRUNCATE TABLE <table>.
Perhatikan pada kasus ini, perintah penghapusan tidak dapat dibatalkan.
Contoh 3.3
Hapus semua data KBI dengan KodeKBI =1
DELETE FROM TabelKBI
WHERE KodeKBI = 1;
Perintah SELECT
Perintah SELECT pada MySql biasanya digunakan untuk menampilkan data yang berada di
dalam tabel. Perintah SELECT mempunyai banyak sekali variasi. Mungkin bisa disebut
perintah yang mempunyai variasi paling banyak di antara perintah-perintah lainnya.
Contoh 3.4
Tampilkan data seluruh mahasiswa.
SELECT * FROM `tablemhs`
Hasil Query adalah sebagai berikut:
Columns Alias (AS) digunakan untuk mengganti nama kolom pada tampilan SELECT.
Contoh 3.5
Tampilkan data seluruh mahasiswa.
SELECT Nama as 'Nama Mahasiswa' FROM `tablemhs`
Hasil Query
21
Panduan Praktikum Sistem Basis Data
Where digunakan untuk membatasi hasil SELECT yang ditampilkan berdasarkan kondisi yang
ditentukan.
Contoh 3.6
Menampilkan nama mahasiswa asal kota Malang
SELECT Nama as 'Nama Mahasiswa' FROM `tablemhs` WHERE Kota='Malang'
Bisa menggunakan >, <, <> (atau !=), >=, <= Gunakan AND atau OR untuk lebih dari satu
kondisi.
SELECT Nama as 'Nama Mahasiswa' FROM `tablemhs` WHERE Kota='Malang' OR
Kota='Semarang'
Order by digunakan untuk mengurutkan hasil SELECT. Jenis-jenisnya adalah sebagai berikut
ini : Untuk mengurutkan dari kecil ke besar:
Contoh 3.8
Tampilkan nama mahasiswa urut abjad
SELECT Nama as 'Nama Mahasiswa' FROM `tablemhs` ORDER BY Nama
SELECT Nama as 'Nama Mahasiswa' FROM `tablemhs` ORDER BY Nama DESC
Limit dan Offset digunakan Digunakan untuk membatasi jumlah baris yang ditampilkan
dalam SELECT.
Program Studi Matematika, Jurusan Matematika UB
22
Panduan Praktikum Sistem Basis Data
Contoh 3.9
Tampilkan nama mahasiswa, 2 baris pertama
Tampilkan nama mahasiswa urut abjad
SELECT Nama as 'Nama Mahasiswa' FROM `tablemhs` LIMIT 2
SELECT Nama as 'Nama Mahasiswa' FROM `tablemhs` ORDER BY `Nama
Mahasiswa` ASC LIMIT 2 OFFSET 2
Perhatian: penggunaan LIMIT sebaiknya selalu digunakan bersama dengan ORDER BY,
sehingga urutan yang ditampilkan akan selalu konsisten. LIMIT dan OFFSET sangat berguna
dalam tampilan yang berbasis web (melalui web browser dengan menggunakan PHP atau
JSP) agar tampilan data tidak terlalu besar dan bisa lebih rapi. Tampilan data yang banyak
bisa diatur dan dibagi.
Operator perbandingan
Mengenal operator perbandingan dan operator logika di MySQL. Operator perbandingan
adalah operator untuk membandingkan 2 nilai (angka atau string). Hasil perbandingan akan
bernilai TRUE jika kondisi perbandingan tersebut benar, atau FALSE jika kondisinya salah .
Operator logika adalah operator yang digunakan untuk membandingkan 2 kondisi logika,
yaitu logika benar (TRUE) dan logika salah (FALSE). Operator perbandingan dan operator
logika biasanya digunakan untuk mengambil atau menampilkan data dengan kondisi atau
syarat.
Tabel 3.1 Operator perbandingan
= Operator ini akan membandingkan dua operand A dan B. Jika nilai A A=B
sama dengan B, maka akan bernilai true
!= Operator ini akan membandingkan dua operand A dan B. Jika nilai A A=B
tidak sama dengan B, maka akan bernilai true
<> Operator ini akan membandingkan dua operand A dan B. Jika nilai A A<>B
tidak sama dengan B, maka akan bernilai true
> Operator ini akan membandingkan dua operand A dan B. Jika nilai A A>B
lebih besar dari B, maka akan bernilai true
>= Operator ini akan membandingkan dua operand A dan B. Jika nilai A A>=B
lebih besar atau sama dengan B, maka akan bernilai true
< Operator ini akan membandingkan dua operand A dan B. Jika nilai A A<B
lebih kecil dari B, maka akan bernilai true
23
Panduan Praktikum Sistem Basis Data
<= Operator ini akan membandingkan dua operand A dan B. Jika nilai A A<=B
lebih kecil atau sama dengan B, maka akan bernilai true
!> Operator ini akan membandingkan dua operand A dan B. Jika nilai A A!>B
tidak lebih besar B, maka akan bernilai true
!< Operator ini akan membandingkan dua operand A dan B. Jika nilai A A!<B
tidak lebih kecil B, maka akan bernilai true
Selain operator perbandingan pada Tabel 3.1, MySQL juga mempunyai operator
perbandingan yang lain yaitu:
1. IN
Contoh 3.10.
Tampilkan data mahasiswa yang berasal dari kota “SEMARANG” atau “MALANG” dimana
data yang sudah dimasukkan sebagai berikut:
2. NOT IN
Contoh 3.11.
Tampilkan data mahasiswa yang berasal bukan dari kota “SEMARANG” dan “MALANG”
Program Studi Matematika, Jurusan Matematika UB
24
Panduan Praktikum Sistem Basis Data
dimana data yang digunakan pada contoh 3.4.
SELECT*FROM tablemhs WHERE Kota NOT IN ('MALANG','SEMARANG')
Hasil dari Query tersebut adalah
3. BETWEEN
Contoh 3.12.
Tampilkan data mahasiswa yang tanggal lahirnya pada tahun 1990 dimana data yang
digunakan pada contoh 3.4.
SELECT*FROM tablemhs WHERE TglLahir BETWEEN '1990/01/01' AND '1990/12/31'
Nilai yang pertama dalam BETWEEN harus lebih kecil dari nilai yang kedua. Bisa untuk string.
4. NOT BETWEEN
Contoh 3.13.
Tampilkan data mahasiswa yang tanggal lahirnya bukan pada tahun 1990 dimana data yang
digunakan pada contoh 3.4.
Nilai yang pertama dalam BETWEEN harus lebih kecil dari nilai yang kedua. Bisa untuk string.
Perhatikan perbedaan penggunaan AND dan OR dalam BETWEEN dan NOT BETWEEN.
25
Panduan Praktikum Sistem Basis Data
Tabel : tbnasabah
Tabel : tbcbng_bank
26
Panduan Praktikum Sistem Basis Data
Tabel :tbrekening
Tabel : nasabah_has_rekening
id_nsb no_rekening
1 104
2 103
3 105
3 106
4 101
4 107
5 102
5 107
6 109
7 109
8 111
9 110
27
Panduan Praktikum Sistem Basis Data
10 113
8 112
10 108
Tabel : transaksi
no_trans no_reke id_nsb jenis_trans tanggal jumlah
aksi ning aksi
1 105 3 debit 2009-11-10 50000
2 103 2 debit 2009-11-10 40000
3 101 4 kredit 2009-11-12 20000
4 106 3 debit 2009-11-13 50000
5 107 5 kredit 2009-11-13 30000
6 104 1 kredit 2009-11-15 200000
7 110 9 kredit 2009-11-15 150000
8 102 5 debit 2009-11-16 20000
9 105 3 kredit 2009-11-18 50000
10 107 4 debit 2009-11-19 100000
11 103 2 debit 2009-11-19 100000
12 104 1 debit 2009-11-19 50000
13 107 4 kredit 2009-11-20 200000
14 105 3 debit 2009-11-21 40000
15 104 1 kredit 2009-11-22 100000
16 101 4 kredit 2009-11-22 20000
17 103 2 debit 2009-11-22 50000
18 102 5 debit 2009-11-25 50000
19 108 10 debit 2009-11-26 100000
20 106 3 kredit 2009-11-27 50000
21 103 2 kredit 2009-11-28 200000
22 105 3 kredit 2009-11-28 100000
23 102 5 debit 2009-11-30 20000
24 104 1 debit 2009-12-1 50000
25 103 2 debit 2009-12-2 40000
Program Studi Matematika, Jurusan Matematika UB
28
Panduan Praktikum Sistem Basis Data
26 101 4 debit 2009-12-4 50000
27 103 2 kredit 2009-12-5 100000
28 102 5 kredit 2009-12-5 200000
a. Nasabah dengan nama “Indri Hapsari” pindah alamat k e “Jalan Slamet Riyadi
No.34”.
b. Cabang dengan kode “BRUW” pindah ke alamat “Jalan A . Yani No.23”.
3. Lakukan penghapusan untuk kasus-kasus berikut.
4. Tampilkan tanggal transaksi, jenis transaksi, dan jumlah transaksi untuk semua transaksi
yang dilakukan oleh Sutopo dan Canka Lokananta dan diurutkan berdasarkan tanggal
transaksi dengan kode berikut :
SELECT transaksi.tanggal, transaksi.jenis_transaksi, transaksi.jumlah FROM tbnasabah,
transaksi WHERE tbnasabah.id_nsb=transaksi.id_nsb AND tbnasabah.nama_nsb IN
('Sutopo','Canka Lokananta') ORDER BY transaksi.tanggal
5. Tampilkan tanggal transaksi, nama nasabah, jenis transaksi, dan jumlah transaksi untuk
semua transaksi yang terjadi dari 15 November sampai 20 November 2009 dan
diurutkan berdasarkan tanggal transaksi dan nama nasabah dengan kode berikut :
SELECT transaksi.tanggal,tbnasabah.nama_nsb, transaksi.jenis_transaksi,
transaksi.jumlah FROM tbnasabah, transaksi WHERE transaksi.tanggal BETWEEN '2009-
11-15' AND '2009-11-20' AND tbnasabah.id_nsb=transaksi.id_nsb ORDER BY
transaksi.tanggal, tbnasabah.nama_nsb
9. Tampilkan jenis transaksi, jumlah transaksi dalam Rp dan total transaksi untuk
nasabah yang bernama akhiran ‘Kartika Padmasari’ untuk masing-masing jenis
transaksi!
29