QUERY GROUP BY Google Sheets: Agregasi ala SQL (2026)
Blog/Tutorial Excel & Sheets/QUERY GROUP BY Google Sheets: Agregasi ala SQL (2026)

QUERY GROUP BY Google Sheets: Agregasi ala SQL (2026)

BimaBima
·4 Agustus 2026·9 menit baca

Penulis

Bima

Bima

Founder & Data Professional

Bagikan

TL;DR

QUERY GROUP BY di Google Sheets ngeringkas data jadi total, rata-rata, atau hitungan per grup, mirip SQL. Contoh: =QUERY(A1:C, "SELECT B, SUM(C) GROUP BY B"). Tiap kolom di SELECT harus ada di GROUP BY atau dibungkus fungsi agregasi kayak SUM, AVG, atau COUNT.

QUERY GROUP BY di Google Sheets ngeringkas data jadi total per grup, mirip GROUP BY di SQL. Satu rumus bisa ngubah ribuan baris transaksi jadi ringkasan per kategori.

Kalau biasanya kamu bikin pivot table buat ini, QUERY kasih hasil serupa lewat rumus yang otomatis update tiap data baru masuk. Ga perlu refresh manual.

Di artikel ini kamu bakal belajar cara nulis GROUP BY, gabungin fungsi agregasi kayak SUM dan AVG, filter hasil grup, sampai kesalahan yang paling sering bikin error.

Apa itu GROUP BY di fungsi QUERY?

GROUP BY ngelompokin baris yang punya nilai sama di kolom tertentu, lalu ngitung satu nilai ringkasan per kelompok. Misalnya, dari ratusan transaksi, GROUP BY kategori ngasih satu baris total per kategori. Fungsi agregasi kayak SUM atau COUNT yang nentuin angka ringkasannya.

Ini artikel lanjutan dari QUERY SELECT WHERE. Kalau WHERE nyaring baris, GROUP BY ngeringkasnya.

Sintaks dasar

=QUERY(data, "SELECT kolom_grup, FUNGSI(kolom) GROUP BY kolom_grup", 1)

Aturan wajib: tiap kolom di SELECT harus muncul di GROUP BY, atau dibungkus fungsi agregasi. Kalau nggak, QUERY keluar error.

Gimana cara hitung total per grup?

Pakai SUM buat jumlahin nilai tiap grup. Anggap kolom B kategori, kolom C total transaksi.

=QUERY(A1:C, "SELECT B, SUM(C) GROUP BY B", 1)

Hasilnya daftar kategori beserta total masing-masing. Mau diurutin dari terbesar? Tambah ORDER BY di akhir:

=QUERY(A1:C, "SELECT B, SUM(C) GROUP BY B ORDER BY SUM(C) DESC", 1)

Perhatiin, di ORDER BY kamu tulis ulang SUM(C), bukan nama kolom hasil. QUERY belum kenal alias di tahap itu.

Fungsi agregasi apa aja yang bisa dipakai?

FungsiKegunaanContoh
SUM()Jumlah totalSUM(C)
AVG()Rata-rataAVG(C)
COUNT()Hitung jumlah barisCOUNT(A)
MAX()Nilai tertinggiMAX(C)
MIN()Nilai terendahMIN(C)

Kamu bisa pakai beberapa sekaligus dalam satu SELECT:

=QUERY(A1:C, "SELECT B, SUM(C), AVG(C), COUNT(A) GROUP BY B", 1)

Ini ngasih total, rata-rata, dan jumlah transaksi per kategori dalam satu tarikan. Kalau butuh cara lain yang lebih sederhana buat satu kondisi, SUMIF juga bisa jadi alternatif.

Cara group by dua kolom sekaligus

Mau ringkasan per kategori dan per bulan? Masukin dua kolom di GROUP BY, dipisah koma.

=QUERY(A1:D, "SELECT B, C, SUM(D) GROUP BY B, C", 1)

Kolom B kategori, C bulan, D total. Hasilnya kombinasi tiap kategori-bulan beserta totalnya. Ini yang bikin QUERY berasa kayak pivot table dua dimensi.

Cara filter hasil grup (WHERE dan agregasi)

WHERE difilter sebelum pengelompokan. Jadi kalau mau ringkasan cuma dari transaksi Minuman:

=QUERY(A1:C, "SELECT B, SUM(C) WHERE B = 'Minuman' GROUP BY B", 1)

Urutan klausa di QUERY itu penting: SELECT, WHERE, GROUP BY, ORDER BY. Kalau kebalik, QUERY error. Ingat urutannya persis kayak SQL.

Contoh kasus: toko_berkah

Di dataset toko_berkah ngulikdata ada 14.880 transaksi setahun. Owner mau tau performa 6 kategori: total omzet, rata-rata nilai transaksi, dan jumlah transaksi masing-masing.

=QUERY(transaksi!A1:E,
  "SELECT C, SUM(E), AVG(E), COUNT(A)
   GROUP BY C
   ORDER BY SUM(E) DESC", 1)

Dari hasilnya, kategori Minuman keluar dengan rata-rata nilai transaksi Rp38.400, tertinggi di antara semua kategori, walau jumlah transaksinya bukan yang terbanyak. Insight kayak gini ga keliatan kalau cuma lihat total. Yang tadinya perlu bikin pivot table dan ngerapiin manual, sekarang jadi satu rumus yang refresh sendiri tiap ada penjualan baru.

Kesalahan umum QUERY GROUP BY

  • Kolom di SELECT ga ada di GROUP BY. Tiap kolom non-agregasi wajib masuk GROUP BY. Kalau nggak, error ADD_COL muncul.
  • Urutan klausa kebalik. GROUP BY harus setelah WHERE. Nulis GROUP BY duluan bikin QUERY gagal parsing.
  • Pakai alias di ORDER BY. Kamu harus tulis ulang SUM(C), bukan nama hasil. QUERY ga kenal alias di ORDER BY.
  • Nyampur teks di kolom angka. Kalau kolom nilai ada teksnya, SUM bisa salah hitung atau abaikan baris. Rapiin tipe data dulu.

FAQ

Apa beda QUERY GROUP BY sama pivot table?

Pivot table itu fitur klik yang bikin ringkasan lewat panel drag and drop, gampang buat eksplorasi cepat. QUERY GROUP BY itu rumus, jadi hasilnya nyatu di sel dan update otomatis tiap data berubah, tanpa refresh manual. Kalau kamu butuh ringkasan yang selalu ikut data terbaru, QUERY lebih praktis. Buat utak-atik cepat, pivot table lebih santai.

Kenapa QUERY GROUP BY aku error ADD_COL?

Error itu muncul karena ada kolom di SELECT yang ga masuk GROUP BY dan ga dibungkus fungsi agregasi. Aturannya: tiap kolom yang kamu pilih harus dikelompokin atau diagregasi. Cek lagi SELECT kamu, pastikan semua kolom non-hitungan ada di klausa GROUP BY.

Bisa ga GROUP BY digabung sama WHERE?

Bisa, dan urutannya wajib bener: WHERE dulu, baru GROUP BY. WHERE nyaring baris sebelum dikelompokin, jadi ringkasannya cuma dari baris yang lolos filter. Contoh: SELECT B, SUM(C) WHERE C > 0 GROUP BY B. Kalau urutannya kebalik, QUERY bakal error.

Gimana caranya kasih nama kolom hasil GROUP BY?

Pakai klausa LABEL di akhir query. Contoh: SELECT B, SUM(C) GROUP BY B LABEL SUM(C) 'Total Omzet'. Ini ngeganti header default yang biasanya jelek kayak 'sum C' jadi nama yang kamu mau. Berguna banget biar hasilnya rapi buat laporan.

Penutup

QUERY GROUP BY ngeringkas data jadi total, rata-rata, atau hitungan per grup dalam satu rumus. Ingat dua aturan: tiap kolom non-agregasi harus di GROUP BY, dan urutan klausa ikut SQL (WHERE, GROUP BY, ORDER BY).

Sekali lancar, kamu bisa gantiin banyak pivot table dengan rumus yang hidup dan update sendiri.

Mau lanjut ke bentuk ringkasan yang lebih rapi? Baca QUERY SELECT WHERE dan latihan di NgulikSheet. Sintaks lengkap ada di dokumentasi fungsi QUERY dari Google.

Coba Langsung

Mau praktek langsung? Mulai latihan SQL gratis

Latihan interaktif, langsung di browser.

Buka NgulikSQL →
Bagikan:
Bima
Ditulis oleh

Bima

Founder & Data Professional

Founder Ngulik Data. Passionate about making data analysis accessible for everyone.

Artikel terkait

Cara Menghitung Nilai Unik di Excel (2026)
Tutorial Excel & Sheets
7 Oktober 2026•9 menit baca

Cara Menghitung Nilai Unik di Excel (2026)

Empat cara menghitung nilai unik di Excel, dari UNIQUE di Excel 365 sampai trik SUMPRODUCT COUNTIF buat versi lama. Plus hitung unik berkondisi.

BimaBima
Cara Membandingkan Dua Kolom di Excel (2026)
Tutorial Excel & Sheets
5 Oktober 2026•9 menit baca

Cara Membandingkan Dua Kolom di Excel (2026)

Lima cara membandingkan dua kolom di Excel yang paling sering kepakai buat rekap: dari rumus =A2=B2 sampai COUNTIF dan Conditional Formatting.

BimaBima
Cara Hapus Baris Kosong di Excel dengan Cepat
Tutorial Excel & Sheets
2 Oktober 2026•8 menit baca

Cara Hapus Baris Kosong di Excel dengan Cepat

Ratusan baris kosong bikin data berantakan. Ini 4 cara hapus baris kosong di Excel, dari Go To Special yang kilat sampai Power Query yang paling aman.

BimaBima
Kembali ke Blog
Ngulik Data logoNgulik Data

Platform edukasi data lengkap untuk professionals Indonesia. Belajar SQL, Data Analysis, dan lebih banyak lagi dengan praktek langsung dan feedback real-time.

© 2026 Ngulik Data. Semua hak dilindungi.

TAUTAN
BantuanHargaDatasetBlogAfiliasi
LEGAL
Syarat & KetentuanKebijakan Privasi
Ngulik Data
DatasetLeaderboardBlogStore