0Pricing
Digital Marketing Academy · Pelajaran

SELECT, WHERE, GROUP BY

Agregasikan data kampanye

SELECT, WHERE, GROUP BY adalah pelajaran Digital Marketing Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Digital Marketing Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Digital Marketing Academy mencakup 4 pelajaran total.

Tiga Kata Kerja

Hampir setiap metrik pemasaran dibangun dari tiga klausa: SELECT memilih kolom, WHERE memfilter baris, dan GROUP BY meringkas baris menjadi beberapa segmen.

Kuasai tiga hal ini dan Anda dapat menjawab sendiri sebagian besar pertanyaan analitik sehari-hari.

SELECT channel, SUM(revenue) AS revenue
FROM orders
GROUP BY channel;

SELECT: Memilih Kolom

SELECT mencantumkan data yang ingin Anda terima. Anda dapat mengganti nama kolom dengan AS agar keluaran mudah dibaca, serta menghitung nilai baru secara langsung.

Jaga agar himpunan hasil tetap ringkas: ambil hanya kolom yang benar-benar Anda perlukan, terutama dari tabel besar.

SELECT campaign_id AS campaign,
       spend,
       spend * 1.2 AS spend_with_fees
FROM campaigns;

WHERE: Memfilter Baris

WHERE hanya mempertahankan baris yang sesuai dengan suatu kondisi. Gabungkan kondisi dengan AND dan OR untuk memusatkan perhatian pada sebuah segmen.

Filter tanggal adalah dasar pekerjaan pemasar, karena menetapkan rentang pelaporan secara tepat.

SELECT *
FROM sessions
WHERE channel = 'email'
  AND session_date >= DATE '2026-01-01'
  AND device = 'mobile';

Memfilter dengan IN dan BETWEEN

IN mencocokkan nilai apa pun dalam sebuah daftar, cocok untuk beberapa kampanye sekaligus. BETWEEN mencakup suatu rentang, ideal untuk rentang tanggal.

Keduanya membuat filter rumit tetap singkat dan mudah dibaca, bukan rangkaian OR yang panjang.

SELECT order_id, revenue
FROM orders
WHERE channel IN ('paid_search', 'paid_social')
  AND order_date BETWEEN DATE '2026-03-01' AND DATE '2026-03-31';

GROUP BY: Membuat Segmen

GROUP BY meringkas baris yang memiliki suatu nilai yang sama menjadi satu baris untuk setiap kelompok. Padukan dengan agregat seperti SUM, COUNT, dan AVG untuk mendapatkan metrik per segmen.

Beginilah cara Anda mengubah peristiwa mentah menjadi tabel kinerja untuk setiap kanal.

SELECT channel,
       COUNT(*) AS sessions,
       SUM(revenue) AS revenue
FROM sessions
GROUP BY channel;

Fungsi Agregat

SUM menjumlahkan pendapatan, COUNT menghitung peristiwa, AVG menemukan nilai rata-rata, dan COUNT(DISTINCT ...) menghitung pengguna unik.

Jumlah unik penting dalam pemasaran: total sesi dan jumlah pengunjung unik adalah dua angka yang sangat berbeda.

SELECT campaign_id,
       COUNT(*) AS clicks,
       COUNT(DISTINCT user_id) AS reach,
       AVG(revenue) AS avg_order
FROM orders
GROUP BY campaign_id;

Pengelompokan Multi-Kolom

Kelompokkan berdasarkan lebih dari satu kolom untuk membangun matriks, seperti kanal berdasarkan perangkat. Setiap kombinasi unik menjadi barisnya sendiri.

Ini membuka segmentasi yang lebih mendalam tanpa mengekspor apa pun ke lembar bentang.

SELECT channel, device,
       COUNT(*) AS sessions
FROM sessions
GROUP BY channel, device
ORDER BY channel, sessions DESC;

HAVING: Menyaring Grup

WHERE menyaring baris sebelum pengelompokan; HAVING menyaring grup setelah agregasi. Gunakan HAVING untuk mempertahankan hanya segmen di atas ambang batas.

Contohnya, tampilkan hanya kampanye yang menghasilkan lebih dari 100 pesanan.

SELECT campaign_id, COUNT(*) AS orders
FROM orders
GROUP BY campaign_id
HAVING COUNT(*) > 100
ORDER BY orders DESC;

Pengurutan dan Pembatasan

ORDER BY mengurutkan hasil sehingga baris terpenting muncul lebih dahulu. LIMIT membatasi jumlah yang Anda lihat, sehingga ideal untuk laporan dengan peringkat teratas.

Bersama-sama, keduanya langsung menjawab pertanyaan "apa saja 5 kampanye teratas saya berdasarkan pendapatan?"

SELECT campaign_id, SUM(revenue) AS revenue
FROM orders
GROUP BY campaign_id
ORDER BY revenue DESC
LIMIT 5;

Agregasi Bersyarat

FILTER (atau CASE di dalam agregat) memungkinkan satu kueri menghitung beberapa metrik bersyarat sekaligus, seperti pendapatan dari pelanggan baru dibandingkan dengan pelanggan yang kembali.

Ini menghindari eksekusi beberapa kueri dan menjaga segmen tetap benar-benar selaras.

SELECT channel,
       SUM(revenue) FILTER (WHERE is_new_customer) AS new_rev,
       SUM(revenue) FILTER (WHERE NOT is_new_customer) AS repeat_rev
FROM orders
GROUP BY channel;

Menyatukannya

Kueri lengkap menumpuk semua klausa: menyaring baris dengan WHERE, mengelompokkan, menyaring grup dengan HAVING, lalu mengurutkan dan membatasi hasil.

Bacalah dari atas ke bawah, dan kueri tersebut menyampaikan cerita analitis yang lengkap tentang kanal Anda.

SELECT channel, SUM(revenue) AS revenue
FROM orders
WHERE order_date >= CURRENT_DATE - INTERVAL '30 days'
GROUP BY channel
HAVING SUM(revenue) > 1000
ORDER BY revenue DESC;

Pemeriksaan Singkat

Anda hanya menginginkan grup kampanye dengan lebih dari 50 pesanan. Klausa mana yang menyaring grup teragregasi?

Rangkuman

SELECT memilih kolom, WHERE menyaring baris, GROUP BY membagi data menjadi segmen, HAVING menyaring grup, sedangkan ORDER BY dan LIMIT membentuk keluaran.

Dengan agregasi bersyarat, Anda dapat menghitung beberapa metrik dalam satu kali proses. Berikutnya: menggabungkan data dari beberapa tabel dengan JOIN.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “SELECT, WHERE, GROUP BY” gratis?

Ya — teks lengkap “SELECT, WHERE, GROUP BY” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Digital Marketing Academy, upgrade ke CoddyKit PRO. Kursus Digital Marketing Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “SELECT, WHERE, GROUP BY”?

Agregasikan data kampanye Kamu berlatih Digital Marketing Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Digital Marketing Academy?

Tidak diperlukan pengalaman sebelumnya. Digital Marketing Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “SELECT, WHERE, GROUP BY” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Digital Marketing Academy ini?

Ya. Setiap pelajaran Digital Marketing Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Mengapa Pemasar Mempelajari SQL
  2. SELECT, WHERE, GROUP BY
  3. Menggabungkan Tabel Pemasaran
  4. Kueri Kohort dan Corong
← Kembali ke Digital Marketing Academy