VAR
Przechowuje wynik wyrażenia jako nazwaną zmienną, która następnie może zostać przekazana jako argument do innych wyrażeń miary. Po obliczeniu wartości wynikowych dla wyrażenia zmiennej te wartości nie zmieniają się, nawet jeśli zmienna jest przywoływane w innym wyrażeniu.
Składnia
VAR <name> = <expression>
Parametry
Termin | Definicja |
---|---|
name | Nazwa zmiennej (identyfikator). Ograniczniki nie są obsługiwane. Na przykład wyrażenie "varName" lub [varName] spowoduje wystąpienie błędu. Obsługiwany zestaw znaków: a-z, A-Z, 0-9. Wartość 0–9 jest nieprawidłowa jako pierwszy znak. __ (podwójne podkreślenie) jest dozwolone jako prefiks nazwy identyfikatora. Nie są obsługiwane żadne inne znaki specjalne. Zastrzeżone słowa kluczowe są niedozwolone. Nazwy istniejących tabel są niedozwolone. Puste spacje są niedozwolone. |
wyrażenie | Wyrażenie języka DAX zwracające wartość skalarną lub tabelę. |
Wartość zwracana
Nazwana zmienna zawierająca wynik argumentu wyrażenia.
Uwagi
Wyrażenie przekazane jako argument var może zawierać inną deklarację VAR.
Podczas odwoływania się do zmiennej:
- Miary nie mogą odwoływać się do zmiennych zdefiniowanych poza wyrażeniem miary, ale mogą odwoływać się do zmiennych zakresu funkcjonalnego zdefiniowanych w wyrażeniu.
- Zmienne mogą odwoływać się do miar.
- Zmienne mogą odwoływać się do wcześniej zdefiniowanych zmiennych.
- Nie można odwoływać się do kolumn w zmiennych tabeli za pomocą składni TableName[ColumnName].
Aby uzyskać najlepsze rozwiązania dotyczące korzystania z funkcji VAR, zobacz Używanie zmiennych do ulepszania formuł języka DAX.
Aby dowiedzieć się więcej na temat sposobu użycia funkcji VAR w zapytaniu języka DAX, zobacz Zapytania języka DAX.
Przykład
Aby obliczyć procent wzrostu rok do roku bez użycia zmiennej, można utworzyć trzy oddzielne miary. Ta pierwsza miara oblicza sumę kwoty sprzedaży:
Sum of SalesAmount = SUM(SalesTable[SalesAmount])
Druga miara oblicza kwotę sprzedaży dla poprzedniego roku:
SalesAmount PreviousYear =
CALCULATE([Sum of SalesAmount],
SAMEPERIODLASTYEAR(Calendar[Date])
)
Następnie możesz utworzyć trzecią miarę, która łączy dwie pozostałe miary w celu obliczenia wartości procentowej wzrostu. Zwróć uwagę, że miara Sum of SalesAmount jest używana w dwóch miejscach; najpierw, aby ustalić, czy istnieje sprzedaż, a następnie ponownie, aby obliczyć wartość procentową.
Sum of SalesAmount YoY%: =
IF([Sum of SalesAmount] ,
DIVIDE(([Sum of SalesAmount] – [SalesAmount PreviousYear]), [Sum of SalesAmount])
)
Używając zmiennej, można utworzyć pojedynczą miarę, która oblicza ten sam wynik:
YoY% = VAR Sales = SUM(SalesTable[SalesAmount])
VAR SalesLastYear =
CALCULATE ( SUM ( SalesTable[SalesAmount] ), SAMEPERIODLASTYEAR ( 'Calendar'[Date] ) )
return if(Sales, DIVIDE(Sales – SalesLastYear, Sales))
Używając zmiennej, można uzyskać ten sam wynik, ale w bardziej czytelny sposób. Ponieważ wynik wyrażenia jest przechowywany w zmiennej, wydajność miary może zostać znacznie ulepszona, ponieważ nie musi być ponownie obliczana za każdym razem, gdy jest używana.
Powiązana zawartość
Ulepszanie formuł języka DAX przy użyciu zmiennych
Zapytania języka DAX
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla