Bagikan melalui


VAR

Menyimpan hasil ekspresi sebagai variabel bernama, yang kemudian dapat diteruskan sebagai argumen ke ekspresi pengukuran lainnya. Setelah nilai yang dihasilkan dihitung untuk ekspresi variabel, nilai-nilai tersebut tidak berubah, bahkan jika variabel direferensikan dalam ekspresi lain.

Sintaksis

VAR <name> = <expression>

Parameter

Istilah Definisi
name Nama variabel (pengidentifikasi).
Pembatas tidak didukung. Misalnya, 'varName' atau [varName] akan mengakibatkan kesalahan.
Set karakter yang didukung: a-z, A-Z, 0-9.
0-9 tidak valid sebagai karakter pertama.
__ (garis bawah ganda) diperbolehkan sebagai awalan untuk nama pengidentifikasi.
Tidak ada karakter khusus lainnya yang didukung.
Kata kunci yang dicadangkan tidak diperbolehkan.
Nama tabel yang ada tidak diperbolehkan.
Spasi kosong tidak diperbolehkan.
expression Ekspresi DAX yang mengembalikan nilai skalar atau tabel.

Mengembalikan nilai

Variabel bernama yang berisi hasil argumen ekspresi.

Komentar

  • Ekspresi yang diteruskan sebagai argumen ke VAR dapat berisi deklarasi VAR lain.

  • Saat mereferensikan variabel:

    • Pengukuran tidak dapat merujuk ke variabel yang ditentukan di luar ekspresi pengukuran, tetapi dapat merujuk ke variabel cakupan fungsi yang ditentukan dalam ekspresi.
    • Variabel dapat mengacu pada ukuran.
    • Variabel dapat merujuk ke variabel yang ditentukan sebelumnya.
    • Kolom dalam variabel tabel tidak dapat dirujuk melalui sintaks TableName[ColumnName].
  • Untuk praktik terbaik saat menggunakan VAR, lihat Menggunakan variabel untuk meningkatkan rumus DAX Anda.

  • Untuk mempelajari selengkapnya tentang bagaimana VAR digunakan dalam Kueri DAX, lihat kueri DAX.

Contoh

Untuk menghitung persentase pertumbuhan tahun ke tahun tanpa menggunakan variabel, Anda dapat membuat tiga langkah terpisah. Langkah pertama ini menghitung Jumlah Jumlah Penjualan:

Sum of Sales Amount =
SUM ( Sales[Sales Amount] )

Ukuran kedua menghitung jumlah penjualan untuk tahun sebelumnya:

Sales Amount PreviousYear =
CALCULATE ( [Sum of Sales Amount], SAMEPERIODLASTYEAR ( 'Date'[Date] ) )

Anda kemudian dapat membuat ukuran ketiga yang menggabungkan dua langkah lainnya untuk menghitung persentase pertumbuhan. Perhatikan Jumlah pengukuran SalesAmount digunakan di dua tempat; pertama untuk menentukan apakah ada penjualan, maka sekali lagi untuk menghitung persentase.

Sum of SalesAmount YoY%: =
IF (
    [Sum of Sales Amount] && [Sales Amount PreviousYear],
    DIVIDE (
        ( [Sum of Sales Amount] - [Sales Amount PreviousYear] ),
        [Sales Amount PreviousYear]
    )
)

Dengan menggunakan variabel, Anda dapat membuat satu pengukuran yang menghitung hasil yang sama:

YoY% =
VAR Sales =
    SUM ( Sales[Sales Amount] )
VAR SalesLastYear =
    CALCULATE ( SUM ( Sales[Sales Amount] ), SAMEPERIODLASTYEAR ( 'Date'[Date] ) )
RETURN
    IF ( Sales && SalesLastYear, DIVIDE ( Sales - SalesLastYear, SalesLastYear ) )

Dengan menggunakan variabel, Anda bisa mendapatkan hasil yang sama, tetapi dengan cara yang lebih mudah dibaca. Dan karena hasil ekspresi disimpan dalam variabel, performa pengukuran dapat ditingkatkan secara signifikan karena tidak harus dihitung ulang setiap kali digunakan.

DAX rumus Anda

kueri