Rahmi Remote/Resources

RESOURCE · Data · 10 menit

SQL JOIN + GROUP BY dengan Contoh Jawaban

Query top-10 customer + jebakan JOIN yang ngejatuhin 70% pemula.

01

Soalnya

Tabel orders (order_id, customer_id, tanggal, nominal) + customers (id, nama).

Jawab: siapa 10 customer revenue terbesar bulan lalu?

02

Query jawaban

SELECT c.nama, SUM(o.nominal) AS revenue, COUNT(*) AS n_order FROM orders o JOIN customers c ON c.id = o.customer_id WHERE o.tanggal >= DATE_TRUNC('month', CURRENT_DATE - INTERVAL '1 month') GROUP BY c.nama ORDER BY revenue DESC LIMIT 10;

03

Jebakan yang menjatuhkan 70% pemula

LEFT JOIN berubah jadi INNER karena filter NULL di WHERE.

Duplikat baris karena join key tidak unik — cek COUNT DISTINCT key dulu.

Menghitung jumlah order padahal yang ditanya revenue (SUM vs COUNT).

  • Cek key unik sebelum JOIN
  • Spot check 1 baris manual
  • Tulis grain (per apa angka ini?) di komentar query
04

Cara menulis insight (3 baris)

"3 customer teratas menyumbang 41% revenue (Rp54jt dari Rp132jt). Rata-rata order mereka Rp1,3jt vs rata-rata umum Rp480rb. Rekomendasi: tawarkan paket langganan ke 3 teratas sebelum belanja iklan baru."

Angka spesifik + perbandingan + rekomendasi = insight. Tanpa itu = laporan.

✓

Checklist

  • Query pakai 2 tabel + GROUP BY?
  • Spot check 1 baris cocok?
  • Insight ada angka + rekomendasi?
  • File .sql beromentar tersimpan?

LANJUTAN

MENTOK ATAU RAGU ARAH?

bawa hasil belajarmu ke sesi 1-on-1Semua materi bebas dipelajari. Kalau mentok positioning, portfolio, atau strategi apply, kita bedah bareng.
Book sesi