Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Lagrar resultatet av ett uttryck som en namngiven variabel, som du sedan kan skicka som ett argument till andra måttuttryck. När DAX värdena för ett variabeluttryck har beräknats ändras inte dessa värden, även om du refererar till variabeln i ett annat uttryck.
Syntax
VAR <name> = <expression>
Parametrar
| Begrepp | Definition |
|---|---|
name |
Namnet på variabeln (identifierare). Avgränsare stöds inte. Till exempel resulterar "varName" eller [varName] i ett fel. Teckenuppsättning som stöds: a-z, A-Z, 0-9. 0–9 är inte giltiga som första tecken. __ (dubbelt understreck) tillåts som ett prefix till identifierarnamnet. Inga andra specialtecken stöds. Reserverade nyckelord tillåts inte. Namn på befintliga tabeller tillåts inte. Tomma blanksteg tillåts inte. |
expression |
Ett DAX uttryck som returnerar ett skalärt eller tabellvärde. |
Returvärde
En namngiven variabel som innehåller resultatet av uttrycksargumentet.
Anmärkningar
Ett uttryck som skickas som ett argument till VAR kan innehålla en annan VAR deklaration.
När du refererar till en variabel:
- Mått kan inte referera till variabler som definierats utanför måttuttrycket, men kan referera till funktionella omfångsvariabler som definierats i uttrycket.
- Variabler kan referera till mått.
- Variabler kan referera till tidigare definierade variabler.
- Du kan inte referera till kolumner i tabellvariabler med hjälp av Syntax för TableName[ColumnName].
Metodtips när du använder VARfinns i Använd variabler för att förbättra dina DAX formler.
Mer information om hur VAR används i en DAX-fråga finns i DAX frågor.
Exempel
Exempel i den här artikeln kan användas med exempelmodellen Adventure Works DW 2020 Power BI Desktop. Information om hur du hämtar modellen finns i DAX exempelmodell.
Om du vill beräkna en procentandel av tillväxten från år till år utan att använda en variabel kan du skapa tre separata mått. Det här första måttet beräknar summan av försäljningsbeloppet:
Sum of Sales Amount =
SUM ( Sales[Sales Amount] )
Ett andra mått beräknar försäljningsbeloppet för föregående år:
Sales Amount PreviousYear =
CALCULATE ( [Sum of Sales Amount], SAMEPERIODLASTYEAR ( 'Date'[Date] ) )
Du kan sedan skapa ett tredje mått som kombinerar de andra två måtten för att beräkna en tillväxtprocent. Observera att Sum of SalesAmount används på två platser: först för att kontrollera om en försäljning finns och sedan igen för att beräkna en procentandel.
Sum of SalesAmount YoY%: =
IF (
[Sum of Sales Amount] && [Sales Amount PreviousYear],
DIVIDE (
( [Sum of Sales Amount] - [Sales Amount PreviousYear] ),
[Sales Amount PreviousYear]
)
)
Med hjälp av en variabel kan du skapa ett enda mått som beräknar samma 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 ) )
Med hjälp av en variabel kan du få samma resultat på ett mer läsbart sätt. Och eftersom resultatet av uttrycket lagras i variabeln förbättras måttets prestanda avsevärt eftersom DAX det inte beräknas om varje gång det används.