Thursday, February 19, 2026

Menjadi Data Analyst dari Nol (Part 24)

 

CASE WHEN pada SQL: Pengertian, Fungsi, dan Contoh Lengkap untuk Data Analyst

Kalau kamu sedang belajar SQL untuk menjadi Data Analyst, maka memahami CASE WHEN adalah hal yang wajib. Fitur ini sering digunakan untuk membuat logika kondisi di dalam query, mirip seperti IF-ELSE pada Excel atau bahasa pemrograman lain.

Di artikel ini kita akan bahas:

  • Apa itu CASE WHEN pada SQL

  • Fungsi dan kegunaannya

  • Contoh penggunaan di SELECT

  • Contoh penggunaan di ORDER BY

  • Contoh penggunaan dengan agregasi

  • Tips optimasi untuk Data Analyst

Apa Itu CASE WHEN pada SQL?

CASE WHEN adalah ekspresi logika dalam SQL yang digunakan untuk memberikan kondisi tertentu dan menghasilkan nilai berbeda berdasarkan kondisi tersebut.

Secara sederhana:

CASE WHEN di SQL = IF / ELSE di Excel atau VBA

Digunakan untuk:

  • Klasifikasi data

  • Membuat kategori baru

  • Membersihkan data

  • Transformasi data sebelum masuk dashboard

  • Membuat conditional label di report

Struktur Dasar CASE WHEN

Sintaks dasar:

SELECT column_name, CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ELSE result_default END AS alias_name FROM table_name;

Contoh 1: CASE WHEN pada SELECT

Misalkan kita punya tabel penjualan:

customer_nametotal_sales
Andi5000000
Budi1500000
Sari8000000

Kita ingin mengkategorikan customer berdasarkan total_sales.

SELECT customer_name, total_sales, CASE WHEN total_sales >= 5000000 THEN 'High Value' WHEN total_sales >= 2000000 THEN 'Medium Value' ELSE 'Low Value' END AS customer_category FROM sales;

Hasilnya:

customer_nametotal_salescustomer_category
Andi5000000High Value
Budi1500000Low Value
Sari8000000High Value

Contoh 2: CASE WHEN dengan Agregasi (SUM)

Ini sering dipakai Data Analyst untuk membuat summary report.

SELECT SUM( CASE WHEN total_sales >= 5000000 THEN total_sales ELSE 0 END ) AS total_high_value_sales FROM sales;

Query ini menghitung total sales hanya untuk kategori High Value.

Contoh 3: CASE WHEN pada ORDER BY

Kadang kita ingin mengurutkan data dengan prioritas tertentu.

SELECT customer_name, total_sales FROM sales ORDER BY CASE WHEN total_sales >= 5000000 THEN 1 WHEN total_sales >= 2000000 THEN 2 ELSE 3 END;

Ini akan mengurutkan dari High Value → Medium → Low.

Perbedaan CASE WHEN dan IF di SQL

Beberapa database seperti MySQL punya fungsi IF(), tetapi:

  • CASE WHEN lebih universal

  • Bisa dipakai di semua major database

  • Lebih fleksibel untuk banyak kondisi

Database yang mendukung CASE WHEN:

  • MySQL

  • PostgreSQL

  • Microsoft SQL Server

  • Oracle Database

Best Practice Menggunakan CASE WHEN

Sebagai Data Analyst, perhatikan hal ini:

1️⃣ Urutan Kondisi Itu Penting

SQL membaca dari atas ke bawah. Jika kondisi pertama sudah terpenuhi, kondisi berikutnya tidak akan dicek.

2️⃣ Selalu Gunakan ELSE

Agar tidak menghasilkan NULL yang tidak diinginkan.

3️⃣ Jangan Terlalu Banyak Kondisi

Kalau terlalu kompleks, lebih baik:

  • Buat subquery

  • Atau gunakan tabel referensi (lookup table)

Kapan CASE WHEN Digunakan dalam Dunia Kerja?

Dalam praktik nyata, CASE WHEN sering dipakai untuk:

  • Membuat segmentasi customer

  • Menentukan status pembayaran (Paid / Unpaid)

  • Klasifikasi produk (Best Seller / Slow Moving)

  • Membuat flag data (Valid / Invalid)

  • Membersihkan data sebelum masuk Power BI atau Looker Studio

Buat lo yang lagi bangun sistem reporting dari Excel → SQL → Power BI, CASE WHEN ini salah satu senjata utama 🔥

Kesimpulan

CASE WHEN pada SQL adalah fitur penting untuk membuat logika kondisi langsung di dalam query. Dengan memahami cara kerjanya, kamu bisa:

  • Membuat data lebih terstruktur

  • Membuat kategori otomatis

  • Menyederhanakan proses reporting

  • Meningkatkan kualitas analisis

Kalau kamu serius ingin menjadi Data Analyst profesional, kuasai CASE WHEN sampai benar-benar paham.

Bagikan

Jangan lewatkan

Menjadi Data Analyst dari Nol (Part 24)
4/ 5
Oleh

Subscribe via email

Suka dengan artikel di atas? Tambahkan email Anda untuk berlangganan.