Materi 06 - Tools dan Methods

Bahasa Query untuk Business Analyst

Bahasa query database adalah skill paling fundamental untuk Business Analyst. Pelajari pondasi sampai teknik lanjut dengan deskripsi step-by-step.

Durasi 32 Menit Level Beginner Practical

1. Kenapa Wajib Dikuasai

BA tanpa kemampuan query berarti bergantung 100 persen ke tim engineering untuk ambil data. Lambat, frustrating, dan job market kurang ramah. Kemampuan query adalah skill nomor satu yang dicari di lowongan Business Analyst.

Tetap Relevan di 2026

Walau ada AI dan no-code tools, data tetap di database. Bahasa query adalah cara universal untuk akses data tabular. Spreadsheet terbatas sekitar 1 juta baris, database handle miliaran baris. Tools BI modern juga pakai bahasa query underneath.

2. Query Dasar

Contoh Pengambilan Data Pelanggan Indonesia

  1. Tentukan kolom yang ingin diambil: nama, email, negara
  2. Tunjuk tabel sumber: customers
  3. Pasang filter: negara bernilai Indonesia
  4. Atur urutan: berdasarkan tanggal terbaru
  5. Batasi hasil: 10 baris pertama

3. Aggregation dan Group By

Contoh Total Pendapatan per Negara

  1. Output: jumlah order, total pendapatan, rata-rata order
  2. Tabel sumber: tabel orders
  3. Pengelompokan: per negara
  4. Filter group: pendapatan di atas 1 juta
  5. Urutan: pendapatan terbesar di atas

Filter Baris vs Filter Group

Filter baris diterapkan sebelum pengelompokan, sementara filter group diterapkan setelah aggregation. Aturan: pakai filter group ketika butuh kondisi pada hasil agregasi.

4. Penggabungan Tabel

Tipe GabungHasilUse Case
InnerHanya yang match di kedua tabelCustomer yang punya order
LeftSemua dari tabel kiri plus match dari kananCustomer plus order termasuk yang belum order
RightMirror dari LeftJarang dipakai
Full OuterSemua dari kedua tabelReconciliation

Contoh Gabung Customer dengan Order

  1. Tabel utama: customers (alias c)
  2. Gabung tipe Left ke: orders (alias o)
  3. Kunci gabung: id customer di kedua tabel
  4. Output: nama, email, jumlah order
  5. Pengelompokan per customer dan urut menurun

5. Common Table Expression

CTE bikin query kompleks lebih readable.

Contoh Top 10 Customer Bulan Lalu

  1. Step 1 - bikin CTE bernama last_month_orders
  2. Isi CTE: customer_id dan total spend dari tabel orders, filter tanggal awal Maret 2026, dikelompokkan per customer
  3. Step 2 - query utama: ambil nama dan total spend
  4. Gabung CTE dengan tabel customers
  5. Urutkan total tertinggi dan ambil 10 teratas

6. Window Functions

Contoh Running Total per Customer

  1. Output: customer_id, tanggal order, jumlah, total kumulatif
  2. Total kumulatif dihitung dengan fungsi window agregasi
  3. Partisi per customer (reset window per customer)
  4. Urutan dalam window: tanggal order naik
  5. Sumber data: tabel orders

7. Pattern Query Umum BA

Pertumbuhan Bulanan

  1. Output: bulan, pendapatan, pendapatan bulan sebelumnya, persen pertumbuhan
  2. Pendapatan bulan sebelumnya pakai fungsi lag dengan urut bulan
  3. Persen pertumbuhan = (sekarang dikurangi sebelumnya) dibagi sebelumnya, dikali 100
  4. Sumber: tabel monthly_revenue

Cohort Retention

  1. Output: cohort (bulan signup), jumlah user aktif unique
  2. Tabel: customers (alias c) gabung orders (alias o)
  3. Kunci gabung: id customer
  4. Pengelompokan per bulan signup

8. Best Practices

Tugas Praktik

  1. Daftar di situs latihan online seperti SQLBolt atau HackerRank. Selesaikan 20 problem dasar.
  2. Cari dataset di Kaggle (mis. e-commerce). Load ke database lokal.
  3. Jawab 5 business question: top 10 customer, pertumbuhan bulanan, conversion rate, AOV per kategori, churn rate.
  4. Tulis 1 query CTE plus 1 query window function untuk cohort analysis.
  5. Dokumentasikan hasil di README dengan kueri plus insight.

Rangkuman