Merk
Tilgang til denne siden krever autorisasjon. Du kan prøve å logge på eller endre kataloger.
Tilgang til denne siden krever autorisasjon. Du kan prøve å endre kataloger.
Lagrer resultatet av et uttrykk som en navngitt variabel, som du deretter kan sende som et argument til andre måluttrykk. Når DAX verdiene for et variabeluttrykk beregnes, endres ikke disse verdiene, selv om du refererer til variabelen i et annet uttrykk.
Syntaks
VAR <name> = <expression>
Parametere
| Vilkår | Definisjon |
|---|---|
name |
Navnet på variabelen (identifikator). Skilletegn støttes ikke. VarName eller [varName] resulterer for eksempel i en feil. Støttet tegnsett: a-z, A-Z, 0-9. 0-9 er ikke gyldig som første tegn. __ (dobbelt understrekingstegn) er tillatt som et prefiks til identifikatornavnet. Ingen andre spesialtegn støttes. Reserverte nøkkelord er ikke tillatt. Navn på eksisterende tabeller er ikke tillatt. Tomme mellomrom er ikke tillatt. |
expression |
Et DAX uttrykk som returnerer en skalar- eller tabellverdi. |
Returverdi
En navngitt variabel som inneholder resultatet av uttrykksargumentet.
Merknader
Et uttrykk som sendes som et argument til VAR, kan inneholde en annen VAR deklarasjon.
Når du refererer til en variabel:
- Mål kan ikke referere til variabler som er definert utenfor måluttrykket, men kan referere til funksjonelle omfangsvariabler som er definert i uttrykket.
- Variabler kan referere til mål.
- Variabler kan referere til tidligere definerte variabler.
- Du kan ikke referere til kolonner i tabellvariabler ved hjelp av TableName[ColumnName]-syntaks.
Hvis du vil ha anbefalte fremgangsmåter når du bruker VAR, kan du se Bruke variabler til å forbedre DAX formler.
Hvis du vil ha mer informasjon om hvordan VAR brukes i en DAX spørring, kan du se DAX spørringer.
Eksempel
Eksempler i denne artikkelen kan brukes med eksempelmodellen Adventure Works DW 2020 Power BI Desktop. Hvis du vil ha modellen, kan du se DAX eksempelmodell.
Hvis du vil beregne en prosentdel av år-over-år-vekst uten å bruke en variabel, kan du opprette tre separate mål. Dette første målet beregner Summen av salgsbeløp:
Sum of Sales Amount =
SUM ( Sales[Sales Amount] )
Et annet mål beregner salgsbeløpet for forrige år:
Sales Amount PreviousYear =
CALCULATE ( [Sum of Sales Amount], SAMEPERIODLASTYEAR ( 'Date'[Date] ) )
Deretter kan du opprette et tredje mål som kombinerer de to andre målene for å beregne en vekstprosent. Legg merke til at Sum of SalesAmount brukes på to steder: først for å kontrollere om det finnes et salg, og deretter på nytt for å beregne en prosentdel.
Sum of SalesAmount YoY%: =
IF (
[Sum of Sales Amount] && [Sales Amount PreviousYear],
DIVIDE (
( [Sum of Sales Amount] - [Sales Amount PreviousYear] ),
[Sales Amount PreviousYear]
)
)
Ved hjelp av en variabel kan du opprette ett enkelt mål som beregner samme resultat:
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 ) )
Ved å bruke en variabel kan du få det samme resultatet på en mer lesbar måte. Og fordi resultatet av uttrykket lagres i variabelen, forbedres målets ytelse betraktelig fordi DAX det ikke beregnes på nytt hver gang det brukes.