← Back to list

Basis Data: Sub Query

New day, new lab report. Nabil hereee, and today’s session is all about Sub Query. Ready to explore the breakdown with me? let’s goowww!

Nabilla Paraswati · 2026-05-09 03:20 · 0 claps · 5.0 min read
#database #subquery #information-technology #lab-report-writing
Open on Medium ↗

Basis Data: Sub Query

Gambar 1. Cover Medium

Gambar 1. Cover Medium

New day, new lab report. Nabil hereee, and today’s session is all about Sub Query. Ready to explore the breakdown with me? let’s goowww!

Pendahuluan

Sub Query atau bisa juga disebut nested query adalah sebuah perintah SQL yang disisipkan ke dalam query utama sebagai bagian dari klausa **WHERE, `FROM,** atauSELECT` . Jadi, pengguna bisa mengeksekusi query yang lebih kompleks dengan menggabungkan hasil dari satu query ke query lainnya.

Dengan subquery, pengguna bisa menggabungkan data dari beberapa tabel, melakukan perbandingan antara hasil query, atau membuat pengambilan data yang lebih terperinci.

Klausa WHERE: subquery digunakan untuk memfilter baris berdasarkan kriteria tertentu

→ Klausa **FROM : subquery digunakan untuk menentukan sumber data** untuk query utama

→ Klausa **SELECT: subquery dapat menghasilkan nilai tunggal yang akan dimasukkan ke dalam hasil query utama**

Tipe Sub Query

Multiple-column Subquery: Subquery kolom ganda (multiple-column) mengembalikan lebih dari satu baris dan satu kolom data.

Multiple-row Subquery: Subquery ini menghasilkan beberapa baris data. Subquery baris ganda dapat menggunakan operator komparasi IN, ANY, SOME, atau ALL.

Scalar Subquery: Subquery ini menghasilkan nilai tunggal, seperti hasil perhitungan atau pengambilan data tunggal. Subquery baris tunggal dapat menggunakan operator baris tunggal =, >,>=, <, <=, atau <>.

Praktikum

Pada praktikum ini menggunakan localhost/PhPMyAdmin jika tidak bisa menggunakan localhost maka akan menggunakan ComandPrompt. Disini saya menggunakan localhost. Pada materi minggu ini terdapat beberapa tabel utama, yaitu : mahasiswa, ambil_mk, matakuliah, dosen, dan jurusan. Berikut gambar tabel beserta strukturnya :

Gambar 2. Tabel Mahasiswa

Gambar 2. Tabel Mahasiswa

Gambar 3. Tabel Matakuliah

Gambar 3. Tabel Matakuliah

Gambar 4. Tabel Jurusan

Gambar 4. Tabel Jurusan

Gambar 5. Tabel Dosen

Gambar 5. Tabel Dosen

Gambar 6. Tabel Ambil Mk

Gambar 6. Tabel Ambil Mk

Selanjutnya kita akan mencoba beberapa tipe sub query

  • Scalar : Contoh subquery baris tunggal adalah mendapatkan data mahasiswa yang jenis kelaminnya sama dengan mahasiswa dengan nama “Wati”.

Query :

Gambar 7. Query Scalar

Gambar 7. Query Scalar

Output :

Gambar 8. Output Query Scalar

Gambar 8. Output Query Scalar

  • Multiple-RowSubquery : Pada subquery ini, kita menggunakan operator komparasi IN, ANY / SOME, atau ALL

Operator IN : artinya — sama dengan member di dalam list. menggunakan operator ini untuk mendapatkan data dosen yang mengajar matakuliah

Query :

Gambar 9. Query Operator IN

Gambar 9. Query Operator IN

Output :

Gambar 10. Output Operator IN

Gambar 10. Output Operator IN

Operator ANY/SOME : artinya membandingkan suatu nilai dengan setiap nilai yang dikembalikan oleh subquery. Misalkan kita ingin mendapatkan data matakuliah yang memiliki sks lebih besar dari sembarang (salah satu / setidaknya 1 nilai) sks matakuliah di semester 3.

Query :

Gambar 11. Query Operator ANY/SOME

Gambar 11. Query Operator ANY/SOME

Output :

Gambar 12. Output Operator ANY/SOME

Gambar 12. Output Operator ANY/SOME

Operator ALL : artinya membandingkan suatu nilai dengan semua nilai yang dikembalikan oleh subquery.Misal, kita ingin mendapatkan data matakuliah yang memiliki sks lebih besar dari semua sks matakuliah di semester 3.

Query :

Gambar 13. Query Operator ALL

Gambar 13. Query Operator ALL

Output :

Gambar 14. Output Operator ALL

Gambar 14. Output Operator ALL

  • Multiple-ColumnSubquery : Pada query ini, nilai dari subquery dalam bentuk kolom ganda dikomparasi main query. Sebagai contoh, misalkan kita ingin menampilkan data matakuliah yang semester dan sksnya sesuai dengan semester dan sks matakuliah dengan kode “PTI447”.

Query :

Gambar 15. Query Multiple-ColumnSubquery

Gambar 15. Query Multiple-ColumnSubquery

Output :

Gambar 16. Output Multiple-Column Subquery

Gambar 16. Output Multiple-Column Subquery

  • Operator EXISTS dan NOT EXISTS : Operator EXISTS dan NOT EXISTS digunakan pada correlated subquery untuk memeriksa apakah subquery mengembalikan hasil atau tidak.

EXIST

Query :

Gambar 17. Query Operator EXIST

Gambar 17. Query Operator EXIST

Gambar 18. Output Operator Exist

Gambar 18. Output Operator Exist

NOT EXIST :Pernyataan berikut akan mendapatkan data matakuliah yang tidak diambil oleh mahasiswa.

TUGAS MODUL

1.Dapatkan kode dan nama matakuliah dosen yang menjadi Ketua Jurusan Teknik Elektro.

Query :

Output :

2.Dapatkan data mahasiswa yang tidak mengambil matakuliah.

Query :

Output :

3.Dapatkan data dosen yang mengajar matakuliah di atas semester 3.

Query:

Output :

4.Dapatkan data matakuliah dosen yang bukan merupakan Ketua Jurusan Teknik Elektro.

Query :

Output :

  1. Dapatkan data dosen pengajar matakuliah yang tidak diambil oleh mahasiswa.

Query :

Output :

  1. Dapatkan data dosen yang mengajar matakuliah dengan sks lebih besar dari sembarang sks.

Query :

Output:

7.Dapatkan data mahasiswa yang tinggal satu wilayah dengan dosen yang bukan merupakan Ketua Jurusan Teknik Elektro.

Query :

Output :

8.Dapatkan data mahasiswa yang diajar oleh Ketua Jurusan Teknik Elektro.

Query :

Output:

Kesimpulan

Sub Query atau bisa juga disebut nested query adalah sebuah perintah SQL yang disisipkan ke dalam query utama sebagai bagian dari klausa WHERE, FROM, atau SELECT. Tipe Sub Query yaitu: Multiple-column Subquery, Multiple-row Subquery, dan Scalar Subquery

And that’s it for today’s session. Another lab, another lesson learned. See you in the next breakdown! thankiesss for exploring with me~~~

References :

Ahmad Nugroho, S.Kom., M.Kom.(2026). SQL SUB QUERY. [Modul 6]

Link Github


메타데이터
post_id
db9d17bdf7d6
slug
basis-data-sub-query-db9d17bdf7d6
url
https://medium.com/@nabillaparaswati/basis-data-sub-query-db9d17bdf7d6
canonical_url
https://medium.com/@nabillaparaswati/basis-data-sub-query-db9d17bdf7d6
author_url
https://medium.com/@nabillaparaswati
status
ok
fetched_at
2026-06-09 15:37:30