Perintah #21 · Agregat & Grouping

HAVING di SQL

Menyaring kelompok hasil GROUP BY berdasarkan nilai agregatnya. WHERE menyaring baris, HAVING menyaring kelompok.

Sintaks

SELECT kolom, AGREGAT(kolom)
FROM nama_tabel
GROUP BY kolom
HAVING kondisi_agregat;
BagianKeterangan
kondisi_agregatKondisi yang memakai fungsi agregat, misalnya SUM(qty) > 10.

Tanda [kurung siku] berarti bagian opsional. Kata kunci SQL tidak membedakan huruf besar-kecil, tapi menulisnya dengan huruf besar membuat query lebih mudah dibaca.

Contoh HAVING

Data contoh: penjualan

Tabel penjualan

idtanggalkaryawan_idprodukkategoriqtyharga
1 2026-01-05 4 Laptop Elektronik 2 8500000
2 2026-01-12 6 Printer Elektronik 1 2300000
3 2026-01-20 4 Kursi Kantor Furnitur 5 1200000
4 2026-02-03 6 Laptop Elektronik 1 8500000
5 2026-02-14 4 Meja Kerja Furnitur 3 1750000
6 2026-02-25 5 Kertas A4 ATK 20 55000
7 2026-03-02 6 Kursi Kantor Furnitur 4 1200000
8 2026-03-10 4 Printer Elektronik 2 2300000
9 2026-03-18 5 Kertas A4 ATK 30 55000
10 2026-03-27 6 Monitor Elektronik 3 1900000
query.sql
SELECT produk,
       SUM(qty) AS total_unit
FROM penjualan
GROUP BY produk
HAVING SUM(qty) >= 5
ORDER BY total_unit DESC;

Hasil 2 baris

produktotal_unit
Kertas A4 50
Kursi Kantor 9

Hanya produk yang total terjualnya minimal 5 unit.

Belajar SQL bareng mentor

Hafal sintaks itu mudah. Menjawab pertanyaan bisnis, itu skill.

Private Class Python & SQL untuk Data: dari query dasar sampai JOIN dan studi kasus kerja, dengan kurikulum dan jadwal yang menyesuaikan kamu.

Lihat Private Class