VAR

Uloží výsledek výrazu jako pojmenovanou proměnnou, kterou pak můžete předat jako argument jiným výrazům míry. Po DAX výpočtu hodnot pro výraz proměnné se tyto hodnoty nezmění, i když na proměnnou odkazujete v jiném výrazu.

Syntaxe

VAR <name> = <expression>

Parametry

Semestr Definice
name Název proměnné (identifikátoru).
Oddělovače nejsou podporovány. Například "varName" nebo [varName] způsobí chybu.
Podporovaná znaková sada: a-z, A-Z, 0-9.
0–9 není platné jako první znak.
__ (dvojité podtržítko) je povoleno jako předpona názvu identifikátoru.
Nejsou podporovány žádné další speciální znaky.
Vyhrazená klíčová slova nejsou povolená.
Názvy existujících tabulek nejsou povolené.
Prázdné mezery nejsou povolené.
expression Výraz DAX , který vrací skalární hodnotu nebo hodnotu tabulky.

Návratová hodnota

Pojmenovaná proměnná obsahující výsledek argumentu výrazu.

Poznámky

  • Výraz předaný jako argument VAR může obsahovat jinou deklaraci VAR.

  • Při odkazech na proměnnou:

    • Míry nemůžou odkazovat na proměnné definované mimo výraz míry, ale mohou odkazovat na proměnné funkčního oboru definované v rámci výrazu.
    • Proměnné můžou odkazovat na míry.
    • Proměnné můžou odkazovat na dříve definované proměnné.
    • Na sloupce v proměnných tabulky nemůžete odkazovat pomocí syntaxe TableName[ColumnName].
  • Osvědčené postupy při použití VARnajdete v tématu DAXvzorců .

  • Další informace o tom, jak se VAR používá v DAX dotazu, najdete v tématu DAX dotazy.

Příklad

Příklady v tomto článku můžete použít s ukázkovým modelem Adventure Works DW 2020 Power BI Desktopu. Pokud chcete model získat, podívejte se na DAX ukázkový model.

Pokud chcete vypočítat procento meziročního růstu bez použití proměnné, můžete vytvořit tři samostatné míry. Tato první míra vypočítá součet částky prodeje:

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

Druhá míra vypočítá částku prodeje za předchozí rok:

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

Pak můžete vytvořit třetí míru, která sloučí ostatní dvě míry k výpočtu procenta růstu. Všimněte si, že součet SalesAmount se používá na dvou místech: nejprve zkontrolujte, jestli prodej existuje, a pak znovu k výpočtu procenta.

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

Pomocí proměnné můžete vytvořit jednu míru, která vypočítá stejný výsledek:

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

Pomocí proměnné můžete získat stejný výsledek čitelnějším způsobem. A protože výsledek výrazu je uložený v proměnné, výkon míry se výrazně zlepší, protože DAX se nepřepočítává při každém použití.