Menu
CoddyTech

Subkueri Bagian 1

Termasuk bagian Dasar-Dasar dalam perjalanan SQL di Coddy. Pelajaran 38 dari 72.

Subquery memungkinkan kita menggabungkan beberapa query menjadi satu. Sebagai contoh, perhatikan tabel employees berikut:

idgaji
148
234
346
413
528

Kita memerlukan subkueri karena kita tidak bisa langsung menggunakan WHERE salary > AVG(salary), sebab fungsi agregat seperti AVG() tidak bisa digunakan dalam klausa WHERE. Fungsi tersebut hanya bisa digunakan setelah data dikelompokkan.

SELECT id, salary
FROM employees
WHERE salary > (
    SELECT AVG(salary)
    FROM employees
);

Subquery membantu kita menemukan karyawan yang gajinya lebih tinggi daripada gaji rata-rata perusahaan dengan menghitung rata-ratanya terlebih dahulu (query bagian dalam), lalu menggunakan nilai tersebut untuk memfilter karyawan (query bagian luar).

Karena rata-ratanya adalah: (48 + 34 + 46 + 13 + 28) / 5 = 33.8, berikut hasil query-nya:

idgaji
148
234
346
challenge icon

Tantangan

Mudah

Tabel dan kolom yang tersedia:

  • shop: price, quantity, category, list_date

Tulis query untuk menemukan semua barang (pilih semua kolom) dengan harga yang lebih tinggi daripada harga rata-rata semua barang.

Gunakan subquery dalam klausa WHERE untuk menghitung harga rata-rata, lalu bandingkan harga setiap barang dengan rata-rata ini.

Coba sendiri

quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Playground SQL