SQL untuk Data Analyst: Grain, Filter, dan Join

Query yang berjalan belum tentu menghasilkan angka benar. Pahami arti satu baris dan hubungan antartabel. Dataset latihan kecil memungkinkan hasil setiap operasi diperiksa secara manual.

Mulai dari grain

Periksa kolom, tipe, jumlah baris, dan contoh nilai. Satu baris pesanan berbeda dari item pesanan. Total pesanan yang tersimpan berulang pada setiap item tidak boleh langsung dijumlahkan. Tulis definisi metrik sebelum query sehingga SUM, COUNT, dan COUNT DISTINCT mengikuti makna data.

Tetapkan status dan waktu

Penjualan selesai berbeda dari semua pesanan yang dibuat. Tentukan kolom waktu, zona waktu, serta perlakuan pembatalan. Untuk timestamp, rentang awal inklusif dan akhir eksklusif sering memudahkan batas periode. Catat jumlah baris setelah filter untuk menjelaskan perbedaan dengan laporan lain.

Audit join

Periksa keunikan kunci tabel dimensi sebelum join. Sesudahnya, bandingkan jumlah baris serta total nilai. Bila pelanggan punya beberapa profil, pilih versi yang relevan atau agregasikan terlebih dahulu. Jangan memakai DISTINCT untuk menyembunyikan penggandaan yang belum dipahami karena transaksi sah dapat ikut terhapus.

Validasi agregasi

Bandingkan total keseluruhan dengan jumlah tiap segmen dan periksa kategori kosong. Hitung beberapa kelompok kecil secara manual. Gunakan alias yang menerangkan satuan dan definisi. Saat membandingkan periode, pastikan cakupan hari sebanding serta periode terbaru sudah lengkap.

Contoh Latihan

SELECT kategori, SUM(harga * jumlah) AS nilai_penjualan
FROM item_transaksi
WHERE status = 'selesai'
GROUP BY kategori;
-- Tabel latihan: satu baris per item transaksi.

Tugas Praktik

Buat tabel pesanan dan item pesanan. Tunjukkan join yang menggandakan total lalu perbaiki menggunakan grain yang tepat.

Periksa Hasilmu

  • Grain jelas
  • Status dan waktu ditentukan
  • Kunci join diperiksa
  • Total direkonsiliasi

Panduan Terkait

Lihat Semua Panduan