VAR

Tallentaa lausekkeen tuloksen nimettynä muuttujana, jonka voit sitten välittää argumenttina muihin mittayksikkölausekkeisiin. Kun DAX olet laskenut muuttujalausekkeen arvot, nämä arvot eivät muutu, vaikka viittaat muuttujaan toisessa lausekkeessa.

Syntaksi

VAR <name> = <expression>

Parametrit

Termi Määritelmä
name Muuttujan nimi (tunniste).
Erottimia ei tueta. Esimerkiksi 'varName' tai [varName] aiheuttaa virheen.
Tuettu merkistö: a–z, A–Z, 0–9.
0–9 ei kelpaa ensimmäisenä merkkinä.
__ (kaksinkertainen alaviiva) sallitaan etuliitteenä tunnisteen nimelle.
Muita erikoismerkkejä ei tueta.
Varattuja avainsanoja ei sallita.
Olemassa olevien taulukoiden nimiä ei sallita.
Tyhjiä välilyöntejä ei sallita.
expression DAX Lauseke, joka palauttaa skalaari- tai taulukkoarvon.

Palautusarvo

Nimetty muuttuja, joka sisältää lausekeargumentin tuloksen.

Huomautuksia

  • VAR argumenttina välitetty lauseke voi sisältää toisen VAR esittelyn.

  • Kun viittaat muuttujaan:

    • Mittarit eivät voi viitata muuttujiin, jotka on määritetty mittarilausekkeen ulkopuolella, mutta ne voivat viitata lausekkeessa määritettyihin funktionaalisiin vaikutusalueen muuttujiin.
    • Muuttujat voivat viitata mittareihin.
    • Muuttujat voivat viitata aiemmin määritettyihin muuttujiin.
    • Taulukkomuuttujien sarakkeisiin ei voi viitata tableName[ColumnName]-syntaksin avulla.
  • Katso VARkäyttämisen parhaat käytännöt kohdasta Paranna DAX kaavojakäyttämällä muuttujia.

  • Lisätietoja siitä, miten VAR käytetään DAX kyselyssä, on artikkelissa Kyselyjen DAX.

Esimerkki

Tämän artikkelin esimerkkejä voidaan käyttää Adventure Works DW 2020 Power BI Desktop -mallissa. Jos haluat hakea mallin, katso DAX esimerkkimallin.

Voit luoda kolme erillistä mittaria, jos haluat laskea prosenttiosuuden kasvulle vuodesta vuoteen käyttämättä muuttujaa. Tämä ensimmäinen mittayksikkö laskee myyntimäärän summan:

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

Toinen mittayksikkö laskee edellisen vuoden myyntimäärän:

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

Voit sitten luoda kolmannen mittayksikön, joka yhdistää kaksi muuta mittaria, kasvuprosentin laskemiseksi. Huomaa, että Myyntimäärän summa -arvoa käytetään kahdessa paikassa: ensin tarkistetaan myynnin olemassaolo ja sitten lasketaan prosenttiosuus.

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

Käyttämällä muuttujaa voit luoda yksittäisen mittarin, joka laskee saman tuloksen:

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 ) )

Käyttämällä muuttujaa voit saada saman tuloksen helpommin luettavalla tavalla. Koska lausekkeen tulos on tallennettu muuttujaan, mittarin suorituskyky paranee merkittävästi, koska DAX sitä ei lasketa uudelleen aina, kun sitä käytetään.