Learn
← Previous Next →

Hari 7: CASE WHEN — Logika Kondisional

50 min Last updated 25 Mar 2026

CASE WHEN — IF/ELSE dalam SQL

CASE WHEN adalah cara menulis logika kondisional di dalam query SQL.

-- Beri label berdasarkan nilai
SELECT nama, umur,
  CASE
    WHEN umur < 25 THEN 'Muda'
    WHEN umur BETWEEN 25 AND 35 THEN 'Dewasa'
    ELSE 'Senior'
  END AS kategori_umur
FROM pelanggan;

-- Bentuk sederhana (search expression)
SELECT nama_produk, harga,
  CASE
    WHEN harga < 100000 THEN 'Murah'
    WHEN harga < 1000000 THEN 'Menengah'
    ELSE 'Mahal'
  END AS segmen_harga
FROM produk;

CASE dalam ORDER BY

-- Prioritaskan status "aktif" di atas
SELECT nama, status FROM pelanggan
ORDER BY
  CASE status WHEN 'aktif' THEN 1 ELSE 2 END,
  nama ASC;

💡 Notice: CASE dievaluasi dari atas ke bawah — kondisi pertama yang terpenuhi akan dipakai.

Assignment

Tampilkan nama_produk, harga, dan kolom baru "segmen" berisi: "Budget" jika harga < 100000, "Mid-range" jika harga < 1000000, "Premium" jika harga >= 1000000.

Expected output:

15 row(s) returned
SQL query.sql
Solution
Output
⏳ Loading DB...