DAXにおけるSUM関数は、Excel関数でのイメージ通り、列の合計を行います。
一方、DAX関数には、SUMXといった最後に「X」のつく関数が登場します。
この記事では、SUMとSUMXの違いについて説明をします。
次のテーブルで総売上を求めたいとします。
SUM関数を使った場合
まずは、SUM関数を使って、
売上金額:=SUM([単価])*SUM([販売数])
とメジャーを作成すると、1,200円という誤った計算結果が出力されます。
これは、単価列の足し算(SUM)、販売数列の足し算(SUM)を先に行ってしまうためです。
SUMXの場合
次は、SAMXを使ったメジャーを作成してみます。
売上金額:=SUMX('販売実績',[単価]*[販売数])
こちらは、先に各行の「単価×販売数」を計算し、その結果を足し算(SUM)するので正しく結果を得られます。
※式内で指定した’販売実績’は、テーブル名
SUM関数が、単純に指定した列の合計を求めるのに対して、
SUMX関数は行ごとの処理を済ませた後で、列の合計を求めます。
コメント