MODUL 9
EKSPRESI & SUBQUERY
A. DASAR TEORI
Pada dasarnya subquery merupakan bagian dalam query. Yang mana berfungsi
sebagai suatu permintaan di dalam permintaan itu sendiri atau suatu permintaan
bersarang. Subquery disebut sebagai ekspresi query yang memiliki tata letak dan di
apit di dalam tanda kurung. Subquery memiliki perintah diantaranya yaitu select,
insert, update, dan delete. Perbedaan query dan subquery ini terletak pada jenis isi
yang mana query terdapat pada dalam sedangkan subquery berisi di luar.
Dalam peneggunaan terapan subquery, biasanya menggunakan satu query. Namun
akan lebih sangat kompleks apabila suatu query digunakan dalam jumlah lebih dari
satu. Namun pada praktikum kali ini subquery disebut dengan query berjenjang yang
mana ia merupakan perintah select yang berada pada perintah SQL lain. pada kegiatan
nanti akan dilakukan suatu perintah yang mana akan menampilkan data yang memiliki
kondisi dengan bergantung dari sebuah data dalam tabel itu sendiri.
Subquery memiliki beberapa fungsi yang dapat memudahkan user dalam
menggunakannya diantaranya yaitu,
1. Menyalin suatu data dari tabel satu ke tabel lain
2. Menghapus data baris dari satu tabel berdasarkan tabel lain
3. Menyunting data yang diambil dari tabel satu kepada tabel baru yang akan dituju
dan diganti
4. Dapat memecahkan nilai yang tidak diketahui pada sebuah masalah
5. Menerima data dari inline view
Subquery atau query berjenjang memiliki beberapa bentuk umum yang mana telah
menjadi dasar dalam penulisan perintah SQL pada suatu database sebagai berikut:
1. Secara umum, nama yang ada dalam kolom subquery disesuaikan dengan nama
tabel pada klausa from yakni query luar yang mana nama tersebut dikukualifikasi
terlebih dahulu.
2. Subquery memiliki dua operan yang mana bekerja pada operan perbandingan, dan
juga operan bekerja pada sisi kanan pembanding.
3. Operasi subquery tidak digunakan pada operan ekspresi
4. Subquery having dan where memiliki satu atau lebih nilai yang akan diperiksa.
5. Having dan Where memiliki tiga bentuk subquery yaitu
Expression [NOT] IN
Comparison [ANY|ALL|SOME]
[NOT] EXISTS
B. TUJUAN PRAKTIKUM
Setelah mengikuti kegiatan praktikum ini, mahasiswa diharapkan mampu:
1. Membuat melakukan pencarian data dengan pengelompokan berdasarkan kriteria
tertentu.
2. Menampilkan data sesuai dengan ekspresi yang diberikan, dalam subquery.
C. ANALISA HASIL
1. Melengkapi isian pada tabel nilai dan yang lain
4. Mengganti alamat kota pada tabel mahasiswa menjadi “Kota Pesisir”, sedangkan
alamat yang lain hanya dituliskan “Kota”
Selanjutnya mengedit nama kota yang berbatasan dengan laut diganti dengan
nama Kota Pesisir. Kemudian untuk nama kota yang lain akan diganti dengan
nama Kota saja. Untuk sintaks yang diterapkan dapat dilihat pada gambar 9.1
mulai dari select nama_mhs hingga as kategori from mahasiswa.
5. Menampilkan dosen yang memiliki salary di atas rata – rata
Dalam menampilkan dosen yang memiliki salary di atas rata – rata, sebelumnya
yaitu menampilkan rata- rata salary dosen. Yaitu dengan menuliskan sintaks
“select @avgsalary:=avg(salary) from dosen” sehingga di dapatkan hasil rata- rata
salary dosen adalah 4714285.714285714. Kemudian baru menuliskan sintaks
untuk menampilkan salary di atas rata –rata yaitu seperti pada gambar 9.12 bagian
bawah.
6. Menuliskan nim, nama mahasiswa dan mata kuliah dengan nilai terbaik
Dalam menampilkan nilai mahasiswa terbaik, fungsi yang digunakan yaitu nilai
max. Dituliskan sebuah sintaks yang dapat dilihat pada gambar 9.13, tekan enter.
Maka muncul nilai terbaik dari mahasiswa yang memiliki nim 13120001 dengan
nilai terbaik yaitu 90.
D. PENYELESAIAN TUGAS
1. Susunlah kegiatan praktikum di atas dalam laporan.
Jawab: sudah terlampir dalam analisa dan hasil.
WHILE
[begin_label:] WHILE search_condition DO
Statement_list
END WHILE [end_label]
REPEAT
[begin_label:] REPEAT
Statement
UNTIL search_condinition
END REPEAT [end_label]
F. DAFTAR PUSTAKA
1. MySQL TUTORIAL. MySQL Subquery. https://www.mysqltutorial.org/mysql-
subquery/
Diakses pada: 20:54 WIB, 29 Desember 2020
2. Ilmu Pengembangan Komputer. Ekspresi dalam Query.
https://komputerilmuit.blogspot.com/2018/09/ekspresi-dalam-query.html
diakses pada: 22.16 WIB 29 Desember 2020
3. Murti, D. H., Azizi, F., & Hanaya, E. (2006). Perangkat Bantu Untuk Optimasi
Query Pada Oracle Dengan Restrukturisasi Sql. JUTI: Jurnal Ilmiah Teknologi
Informasi, 5(2), 118-125.
4. Miko Smartblogger.Basis Data Tentang Query Berjenjang Subquery.
http://aamikoaa.blogspot.com/2017/10/pengertian-basis-data-tentang-query.html
Diakses pada: 09.24 WIB, 30 Desember 2020