次の方法で共有


VAR

式の結果を名前付き変数として格納し、他の measure 式に引数として渡すことができます。 結果として得られる values が変数式に対して計算されると、変数が別の式で参照 valuesnot、変更 evenif。

構文

VAR <name> = <expression>

パラメーター

用語 定義
name 変数の名前 (識別子)。
区切り記号 not サポートされています。 たとえば、[varName] or 'varName' は errorになります。
サポートされている文字セット: a から z、A から Z、0 から 9。
0 から 9 は not 文字として有効 first。
__ (二重アンダースコア) は、識別子名のプレフィックスとして使用できます。
その他の特殊文字はサポートされていません。
予約済みキーワード not 許可されます。
既存のテーブルの名前は許可 not。
空のスペースは許可 not。
expression スカラー DAX テーブル orを返す value 式。

value を返す

式引数の結果を含む名前付き変数。

備考

  • VAR に引数として渡される式には、別の VAR 宣言を含めることができます。

  • 変数を参照する場合:

    • メジャーは、measure 式の外部で定義された変数を参照することはできませんが、式内で定義された関数スコープ変数を参照できます。
    • 変数はメジャーを参照できます。
    • 変数は、以前に定義された変数を参照できます。
    • TableName[ColumnName] 構文を使用してテーブル変数内の列を参照することはできません。
  • VARを使用する場合のベスト プラクティスについては、「変数を使用して DAX 数式を改善する」を参照してください。

  • VAR クエリ内での DAX の使用方法の詳細については、「DAX クエリの」を参照してください。

変数を使用せずに calculate-over-year 増加の割合を year するには、3 つのメジャーを作成できます。 この firstmeasure では、販売金額の Sum が計算されます。

Sum of SalesAmount = SUM(SalesTable[SalesAmount])

second measure は、previousyearの売上金額を計算します。

SalesAmount PreviousYear =
    CALCULATE([Sum of SalesAmount],
    SAMEPERIODLASTYEAR(Calendar[Date])
    )

その後、他の 2 つのメジャーを組み合わせて増加率を measure する 3 番目の calculate を作成できます。 SalesAmount Sum の measure が 2 か所で使用されていることに注意してください。first 販売がある if を判断し、再びパーセンテージを calculate します。

Sum of SalesAmount YoY%: = 
    IF([Sum of SalesAmount] ,
        DIVIDE(([Sum of SalesAmount] – [SalesAmount PreviousYear]), [Sum of SalesAmount])
    )

変数を使用すると、同じ結果を計算する 1 つの measure を作成できます。

YoY% =
  VAR Sales = 
      SUM(SalesTable[SalesAmount])
  VAR SalesLastYear =
      CALCULATE ( SUM ( SalesTable[SalesAmount] ), SAMEPERIODLASTYEAR ( 'Calendar'[Date] ) )

  return if(Sales, DIVIDE(Sales – SalesLastYear, Sales))

変数を使用すると、同じ結果を得ることができますが、読みやすい方法で取得できます。 And 式の結果が変数に格納されるため、measureのパフォーマンスが大幅に向上する可能性があります。これは、使用される各 time を再計算する必要がないためです。

変数を使用して、クエリ 数式を改善する