Anda di halaman 1dari 6

Mata Kuliah : Praktikum Basis Data ACC.

NIM : A710200115
NAMA : Surya Kristyawan
Tgl. Praktikum : 07-01-2022 Tgl.

BAB 9
EKSPRESI DAN SUBQUERY

I. Dasar Teori
Subquery (Subselect) adalah pernyataan SELECT yang merupakan bagian
dari pernyataan lain, misal : INSERT. Pernyataan ORDER BY, FOR
UPDATE OF, UNION, INTERSECT atau EXCEPT tidak termasuk dalam
pernyataan ini. Subquery menghasilkan sebuah tabel yang merupakan bagian
dari tabel atau view yang diidentifikasikan pada klausa FROM. Pembagian ini
dapat digambarkan seperti urutan operasi, dimana hasil dari suatu operasi
adalah input bagi operasi lain.
Subquery diperlukan pada saat hasil query tidak berhasil dilakukan dengan
hanya melalui satu tabel saja, juga pada saat hasil suatu query digunakan pada
klausa WHERE query lainnya. Hasil yang diperoleh dari SUBSELECT tidak
dapat ditampilkan oleh “main” SELECT. Urutan operasi pada Subquery
adalah :

1. klausa FROM
2. klausa WHERE
3. klausa GROUP BY
4. klausa HAVING
5. klausa SELECT

SUBQUERY Coding
Fungsi :
Pada klausa kondisi (WHERE atau HAVING), akses lain seperti SELECT
dapat melibatkan beberapa tabel. Ada beberapa cara untuk menggabungkan
SELECT tambahan pada klausa SELECT atau HAVING :
 Perbandingan aritmatik (=, >, <)
 ANY (dikombinasikan dengan =, >=, <=)
 SOME (dikombinasikan dengan =, >=, <=)
 IN

Subquery banyak kolom


Pada subquery dengan banyak kolom, tiap baris dari main query
dibandingkan dengan nilai dari subquery multiple-row dan multiple-column.
Pembandingan kolom dalam subquery banyak kolom dapat berupa :
 Pembandingan berpasangan (Pairwise Comparison SubQuery)
 Pembandingan tidak berpasangan (NonPairwise Comparison SubQuery)

Ekspresi scalar query


Ekspresi scalar subquery adalah subquery yang mengembalikan hanya satu
nilai kolom dari satu baris. Scalar subquery hanya terbatas pada :

 SELECT Statement (klausa FROM dan WHERE saja)


 Daftar VALUE dari statement INSERT

Korelasi subquery
Korelasi SubQuery digunakan untuk pemrosesan baris per baris. Tiap-tiap
subquery dijalankan sekali untuk setiap baris dari outer query.

Multiple Row subquery


Multiple Row Subquery adalah subquery yang menghasilkan lebih dari
satu baris. Untuk multiple row subquery ini yang digunakan adalah operator
pembandingan : IN, ANY atau ALL.

II. Tujuan
 Melakukan pencarian data dengan pengelompokkan berdasarkan
kriteria tertentu.
 Menampilkan data sesuai dengan ekspresi yang diberikan, dalam
subquery.

III. Analisa Hasil


1. Kegiatan 1: Lengkapi isian pada tabel dan nilai yang lain (modul
sebelumnya)
2. Kegiatan 2: Lakukan klustering berdasarkan kategori pada nilai yang
diperoleh mahasiswa (mulai dari angka, abjad dan klasifikasi)

Gambar 9.1 – Kegiatan 2


Analisis:
Dalam kegiatan ini melakukan pengelompokkan kategori nilai
mahasiswa. Pengelompokkan ini berdasarkan nilai dan kategori nilainya
menggunakan abjad dari A-D seperti terlihat pada gambar diatas.

3. Kegiatan 3: Tuliskan sintaks untuk mendapatkan daftar inisial dan


nama dosen sesuai dengan gendernya.

Gambar 9.2 – Kegiatan 3

Analisis:
Dalam kegiatan ini melihat daftar-daftar inisial dosen, nama dosen
yang disesuaikan dengan gendernya. Nanti hasil outputnya terlihat pada
gambar diatas.

4. Kegiatan 4: Gantilah nama kota pada tabel mahasiswa menjadi “Kota


Pesisisr” pada tabel mahasiswa yang beralamat kota berbatasan dengan
laut, serta tuliskan saja „kota‟ pada kota lain

Gambar 9.3 – Kegiatan 4

5. Kegiatan 5: Siapa saja pada tabel dosen yang memiliki sakary diatas
rata-rata

Gambar 9.4 – Kegiatan 5

Analisis:
Terlihat 3 nama dosen yang memiliki salary diatas rata-rata.

6. Kegiatan 6: Tuliskan NIM, nama mahasiswa, dan mata kuliah dengan


nilai terbaik

Gambar 9.5 – Kegiatan 6


IV. Penyelesaian Tugas
1. Susun laporan
2. Adakah looping dalam sintaks SQL? Jika ada tuliskan.
Ada, yaitu terbagi menjadi 3 : Simple loop (infinisif), for and while
Simple Lop Lop
Statement-statement
End loop;
For For var in (reverse) index_min,
Index_max loop
Statmen-statmen;
End loop;

While While
While kondisi loop
Statemen-statemen;
End loop;

3. Dapatkan dibuat fungsi atau prosedur dalam sintaks SQL? Jelaskan!


Yang dimaksud dengan prosedur tersimpan adalah suatu modul yang
berisi kumpulan pernyataan sql yang ditujukan untuk melaksanakan tugas
tertentu dan letaknya ada pada server modul ini dapat dipanggil oleh klien,
sedangkan pengeksekusi dilakukan di server.
Keuntungan : Meningkatkan kinerja Meningkatkan keamanan
Meningkatkan integritas data (konsistensi data)

Kelemahan : Server akan lebih terbebani

V. Kesimpulan
 Sub Query merupakan query yang digunakan untuk menspesifikasikan
perintah yang memiliki kondisi tertentu dengan cara memberikan perintah
SELECT di dalam SELECT dan biasanya terdiri dari beberapa kondisi
tertentu, serta menggunakan beberapa operator.
 Jenis subquery: ALL, ANY, EXIS, IN

VI. Daftar Pustaka

Yuliana, Irma. (2018). Modul Praktikum Basis Data. Surakarta.


http://ronysyahputra.wordpress.com/2009/11/06/pengenalan-singkat- index-di-
mysql/. Diakses 22 Desember 2021

http://catatankuliahum.blogspot.com/2013/02/sub-query-basis-data.html
Diakses 12 Januari 2022

Anda mungkin juga menyukai