Perintah #20 · Agregat & Grouping

GROUP BY di SQL

Mengelompokkan baris dengan nilai yang sama, lalu menghitung agregat untuk tiap kelompok. Mirip Pivot Table di Excel.

Sintaks

SELECT kolom_kelompok, AGREGAT(kolom)
FROM nama_tabel
GROUP BY kolom_kelompok;
BagianKeterangan
kolom_kelompokKolom yang jadi dasar pengelompokan. Satu baris hasil untuk tiap nilai unik.
AGREGAT(kolom)COUNT, SUM, AVG, MIN, atau MAX yang dihitung per kelompok.

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 GROUP BY

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 kategori,
       COUNT(*) AS transaksi,
       SUM(qty * harga) AS omzet
FROM penjualan
GROUP BY kategori
ORDER BY omzet DESC;

Hasil 3 baris

kategoritransaksiomzet
Elektronik 5 38100000
Furnitur 3 16050000
ATK 2 2750000

Elektronik menyumbang omzet terbesar. Setiap kategori jadi satu baris.

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