Lewati ke konten utama

Menguasai SWITCH di DAX untuk Power BI: Panduan Komprehensif

Jelajahi fungsi SWITCH di Power BI, apa itu, cara menggunakannya, serta beberapa jebakan umum dan praktik terbaik.
Diperbarui 28 Sep 2026  · 10 mnt Baca

Jelajahi bersama AI

ChatGPTClaudePerplexity

Fungsi SWITCH() di Power BI adalah fungsi logika DAX yang menyediakan cara yang lebih terstruktur dan mudah dibaca untuk menangani banyak kondisi dibandingkan dengan pernyataan IF() bersarang.

Dalam tutorial ini, kita akan membahas secara rinci fungsi SWITCH(). Kita akan membahas apa itu, cara menggunakannya, serta beberapa jebakan umum dan praktik terbaik dalam menggunakan fungsi tersebut.

Untuk mulai menggunakan Power BI dan DAX, lihat jalur keahlian Power BI Fundamentals kami dan simpan DAX Cheat Sheet kami sebagai referensi cepat untuk banyak fungsi DAX paling berguna yang akan Anda temui.

image2.png

Apa itu Fungsi SWITCH di Power BI?

Fungsi SWITCH() di DAX untuk Power BI memudahkan penulisan pernyataan bersyarat. Fungsi ini mengevaluasi sebuah ekspresi lalu membandingkannya dengan serangkaian nilai, dan mengembalikan hasil yang pertama kali cocok.

SWITCH() dapat menggantikan beberapa pernyataan IF() bersarang dengan merangkum banyak kondisi dalam satu fungsi. Ini menghasilkan ekspresi DAX yang lebih bersih dan sederhana, sehingga lebih mudah dibaca dan dipelihara. Fungsi ini juga meningkatkan keterbacaan rumus Anda, sehingga memudahkan Anda dan orang lain untuk memahami serta memodifikasi perhitungan Anda.

Sintaks dasar dan penggunaan

Sintaks dasar untuk fungsi SWITCH() adalah:

SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])
  • Expression: Ekspresi yang dievaluasi.
  • Value: Nilai yang dibandingkan dengan ekspresi.
  • Result: Hasil yang dikembalikan jika ekspresi cocok dengan nilai yang bersesuaian.
  • Else: Hasil opsional yang dikembalikan jika tidak ada nilai yang cocok dengan ekspresi.

Berikut adalah kiat cepat untuk membaca pernyataan sintaks dasar (seperti di atas) yang umum ditemukan dalam tutorial dan dokumentasi resmi Microsoft Power BI. Pernyataan di atas menampilkan dua set parameter <value> dan <result>, dengan set kedua diapit tanda kurung siku. Ini berarti dapat ada lebih dari satu set nilai dan hasil yang bersifat opsional dalam fungsi SWITCH(). Demikian pula, bagian <else> pada fungsi juga dibungkus tanda kurung siku, sehingga juga opsional.

Perbandingan dengan pernyataan IF bersarang

Cara tradisional untuk menangani banyak kondisi di DAX melibatkan pernyataan IF bersarang, yang dapat dengan cepat menjadi kompleks dan sulit dibaca. Misalnya, menangani empat kondisi memerlukan tiga fungsi IF bersarang. Sebaliknya, fungsi SWITCH() merampingkan hal ini dengan memungkinkan daftar pasangan kondisi-hasil secara langsung, sehingga meningkatkan keterbacaan dan kemudahan pemeliharaan.

Meskipun banyak pernyataan IF bersarang dapat menghasilkan keluaran yang sama seperti SWITCH(), SWITCH() tetap lebih disukai karena lebih mudah ditulis dan lebih kecil kemungkinannya terjadi kesalahan. Banyak pemanggilan IF() juga dapat berdampak negatif pada kinerja laporan. Namun, perlu diingat bahwa fungsi SWITCH() juga dapat memengaruhi kinerja laporan. Karena itu, kita akan membahas strategi untuk mengoptimalkan fungsi SWITCH() Anda beserta beberapa praktik terbaik di bagian akhir tutorial ini.

Kecocokan untuk perhitungan kompleks

SWITCH() sangat cocok untuk skenario ketika Anda memiliki serangkaian nilai yang terdefinisi untuk sebuah ekspresi dan hasil yang bersesuaian untuk masing-masing nilai tersebut.

Fungsi ini lebih bersih dan efisien daripada menggunakan banyak IF() bersarang, terutama ketika jumlah kondisi bertambah. Hal ini menjadikan SWITCH() pilihan yang sangat baik untuk perhitungan kompleks di mana keterbacaan dan kinerja menjadi perhatian.

Namun, meskipun SWITCH() dapat meningkatkan keterbacaan, manfaat kinerjanya dibandingkan IF bersarang sangat bergantung pada kasus penggunaan spesifik dan model data yang mendasarinya.

Cara Menggunakan Fungsi SWITCH di Power BI

Contoh-contoh berikut menggambarkan fleksibilitas fungsi SWITCH() dalam mengatasi berbagai skenario bisnis di Power BI. Dengan mengganti pernyataan IF() bersarang yang kompleks dengan SWITCH(), Anda dapat memperoleh rumus DAX yang lebih jelas dan lebih mudah dipelihara.

Contoh 1: Analisis kategori penjualan

Bayangkan sebuah bisnis ingin mengategorikan penjualannya ke dalam beberapa tingkat berdasarkan total nilai penjualan untuk menganalisis kinerja penjualannya secara lebih efektif.

Pada rumus DAX di bawah ini, kita menggunakan fungsi SWITCH() untuk menetapkan kategori penjualan berdasarkan total nilai penjualan. Anda akan melihat bahwa kita menggunakan fungsi logika TRUE() sebagai ekspresi dalam rumus. Ini karena SWITCH() hanya mencari kecocokan yang tepat, sedangkan kita ingin menggunakan operator seperti lebih besar dari dan lebih kecil dari dalam rumus. Jadi, dengan menetapkan ekspresi ke TRUE(), SWITCH() akan mengevaluasi setiap kondisi hingga ditemukan kecocokan (yaitu ketika hasilnya true).

Sales Category =
SWITCH(
    TRUE(),
    [Total Sales] < 10000, "Low Sales",
    [Total Sales] < 50000, "Medium Sales",
    [Total Sales] >= 50000, "High Sales",
    "Unknown")

Berikut hasilnya di Power BI:

image3.png

Contoh 2: Strategi diskon produk

Misalkan sebuah jaringan ritel menerapkan persentase diskon yang berbeda pada produk berdasarkan harga jual bersihnya untuk memaksimalkan profitabilitas. Mereka ingin menghitung total nilai penjualan setelah diskon di tokonya.

Pada rumus DAX di bawah ini, kita menggunakan fungsi SWITCH() di dalam sebuah variabel. Karena kita tidak perlu menggunakan rumus persentase diskon di bagian lain laporan, kita dapat mengurangi perhitungan berulang dan hanya mengevaluasinya dalam rumus penjualan setelah diskon ini.

DiscountedSales =
    VAR DiscountPct = SWITCH(
        TRUE,
        Sales[Net Price] <= 150, 0.15,
        Sales[Net Price] <= 500, 0.2,
        Sales[Net Price] <= 1000, 0.3,
        0
    )
    VAR DiscountAmount = Sales[SalesAmount] * (1 - DiscountPct)
    RETURN
    DiscountAmount

Berikut hasilnya di Power BI:

image1.png

Jebakan Umum dan Cara Menghindarinya

Bagian ini meninjau beberapa jebakan umum saat menggunakan fungsi SWITCH() beserta rekomendasi untuk menghindarinya.

1. Terlalu sering digunakan untuk kondisi sederhana

Menggunakan SWITCH() untuk skenario di mana pernyataan IF sederhana sudah memadai dapat membuat rumus DAX Anda menjadi rumit tanpa perlu.

Sebaliknya, gunakan SWITCH() untuk kasus dengan banyak kondisi. Untuk satu atau dua kondisi, pertimbangkan menggunakan IF demi kesederhanaan.

2. Dampak kinerja pada dataset besar

Penggunaan fungsi SWITCH() secara ekstensif, terutama dengan ekspresi yang kompleks, dapat memperlambat kinerja laporan pada dataset besar.

Optimalkan ekspresi di dalam SWITCH() dengan menghitung terlebih dahulu bagian yang kompleks menggunakan variabel. Variabel membuat ekspresi SWITCH() lebih bersih dan mudah dipahami, secara tidak langsung membantu optimalisasi dengan mengurangi peluang terjadinya perhitungan yang berulang atau tidak perlu.

Hitung sekali ekspresi umum atau bagian kompleks dari kondisi Anda dan simpan dalam variabel. Ini mencegah penghitungan ulang ekspresi yang sama berkali-kali di dalam fungsi SWITCH().

3. Penggunaan default yang tidak efisien

Menyalahgunakan kasus default dalam SWITCH() untuk menangani kesalahan atau nilai tak terduga tanpa pertimbangan yang tepat dapat menghasilkan keluaran yang tidak benar.

Definisikan kondisi dengan jelas dan tangani skenario yang diketahui secara eksplisit. Gunakan fungsi seperti IFERROR atau ISBLANK untuk mengelola nilai yang tak terduga atau hilang.

4. Salah memahami konteks

Melupakan bahwa SWITCH() dievaluasi dalam konteks saat ini dapat menyebabkan hasil yang tidak terduga, terutama saat digunakan dalam konteks baris atau filter. Lihat kursus Introduction to DAX kami, di mana kami membahas konteks secara lebih mendalam.

Saat merancang ekspresi SWITCH(), selalu pertimbangkan konteks baris atau filter saat ini. Gunakan fungsi transisi konteks seperti CALCULATE() secara bijak untuk menyesuaikan konteks sesuai kebutuhan.

5. Urutan operasi

Mengabaikan urutan kondisi dalam pernyataan SWITCH() dapat menyebabkan hasil yang tidak terduga, karena fungsi SWITCH() mengevaluasi kondisi sesuai urutan yang didefinisikan dan menggunakan kondisi pertama yang cocok.

Pastikan setiap kasus muncul dalam urutan yang benar, sebagaimana Anda lakukan dengan pernyataan IF() bersarang.

Praktik Terbaik SWITCH

Berikut beberapa praktik terbaik untuk menggunakan SWITCH() secara efektif:

  • Gunakan untuk banyak kondisi: SWITCH() ideal saat Anda memiliki lebih dari dua pemeriksaan kondisi. Ini membuat rumus Anda lebih mudah dibaca dan dipelihara dibandingkan pernyataan IF() bersarang.

  • Definisikan semua kasus dengan jelas: Fungsi SWITCH() Anda harus mencakup semua kemungkinan skenario, termasuk kasus default untuk menangani nilai yang tidak terduga. Ini memastikan perhitungan Anda tangguh dan lebih kecil kemungkinannya terjadi kesalahan.

  • Optimalkan untuk kinerja: Jaga agar ekspresi di dalam SWITCH() sesederhana mungkin untuk menghindari penurunan kinerja saat bekerja dengan dataset besar. Menggunakan variabel untuk menyimpan hasil antara dapat membantu meminimalkan beban komputasi.

  • Uji secara menyeluruh: Terutama saat menggunakan SWITCH() untuk logika yang kompleks, pastikan Anda menguji hasil secara menyeluruh di berbagai skenario. Ini membantu menangkap kesalahan logika atau kasus yang terlewat.

Kesimpulan

Jika Anda mencari cara yang lebih efisien dan serbaguna untuk menangani banyak kondisi di Power BI, SWITCH() adalah jawabannya. Tidak seperti pernyataan IF bersarang, fungsi SWITCH() merangkum banyak kondisi ke dalam satu fungsi, menghasilkan ekspresi DAX yang lebih bersih dan sederhana, sehingga lebih mudah dibaca dan dipelihara. Selain itu, fungsinya meningkatkan keterbacaan rumus Anda, sehingga memudahkan Anda dan orang lain untuk memahami serta memodifikasi perhitungan Anda.

Namun, hindari beberapa kesalahan umum saat menggunakan fungsi SWITCH() dan ikuti praktik terbaik yang telah kita bahas dalam tutorial ini.

Jika Anda serius ingin memulai karier sebagai pengembang Power BI, lihat panduan langkah demi langkah menjadi pengembang BI kami beserta jalur karier lengkap Data Analyst in Power BI, yang akan mengajarkan semua yang perlu Anda ketahui untuk mulai menggunakan Power BI secara praktis.


Joleen Bothma's photo
Author
Joleen Bothma
LinkedIn
Topik
Power BI

Mulai Perjalanan Power BI Anda Hari Ini!

{count, plural, one {Kursus} other {Kursus}}

Pengantar Power BI

{hours} jam
825.1K
Kuasai dasar-dasar Power BI dan pelajari cara menggunakan perangkat lunak visualisasi data untuk membuat laporan yang berdampak.
Lihat DetailRight Arrow
Mulai Kursus
Lihat SelengkapnyaRight Arrow
Terkait

{count, plural, one {blog} other {blogs}}

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

{count, plural, one {blog} other {blogs}}

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

{count, plural, one {blog} other {blogs}}

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

{count, plural, one {blog} other {blogs}}

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

Lihat SelengkapnyaLihat Selengkapnya