科学の箱

科学・IT・登山の話題

PowerBI

計算列とメジャーの違い

投稿日:2021年6月11日 更新日:

計算列は値を一つ一つの行しか見ない。いったん計算されるとPower BI上のVisualで変更されることはない。

それに対してメジャーは選択の範囲により計算に入力する行の範囲が異なってくる。すべての行を対象とすれば計算列と同じ扱いになる。しかしVisual上での選択、あるいはVisual上でカラムで絞り込んでいったときの選択により、計算対象となる行が動的に変化する。

例えば下記のコードを考えてみる。

Filterに対してAllが設定されていないために、Visual上で選択されたカラムにより暗黙的な絞り込みが行われる。例えば時間、カテゴリー、ロケーションなどにより暗黙的に選択されたレコードセットが出来上がり、そのレコードセットに対して、Filter関数が機能する。SUMXはレコードセットからフィルターされた結果の新しいレコードセットをすべての走査して、計算する。

'Product'[Product Sales Amount Multiple Items] =
SUMX (
    FILTER (
        RELATEDTABLE ( Sales ),
        Sales[Quantity] > 1
    ),
    Sales[Quantity] * Sales[Unit Price]
)

 

メタ情報

inarticle



メタ情報

inarticle



-PowerBI

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

メジャーの評価方法

特定のカテゴリにおける売上合計をみる DEFINE MEASURE Sales[SalesRedAmount]=SUMX( FILTER (Sales,RELATED ( ‘Product'[Colo …

no image

参照先テーブルから値を取得する

前提条件としてモデルでリンクが設定されていてかつActiveになっていること。   related関数は第一引数にテーブル+フィールド名を与えるとリンクが張られている値をとってくれる。 &n …

no image

グループ化して新しいテーブルを作るためのDAX

Groupbyで新しいテーブルをグループ化して戻すことができる。 第一引数がグループ化したいテーブル名、第二引数がグループ化するフィールド、第3引数がグループ化した結果を収めるフィールド名、第4引数が …

no image

DAXを一言でいうと

DAXを理解するのは難しいが、一言でいうとテーブルを戻すlambda関数と考えればよい。 テーブル情報を入力として、計算をしてテーブルを返す。それだけである。 ただし入力と出力の型が決まっているために …

no image

ALLとREMOVEFILTERSの違い

フィルタを削除するという機能としては同じであるが、戻り値が異なる。 ALLはフィルタを削除した後のテーブルを返す。REMOVEFILTERSはテーブルのフィルターを削除するだけである。メジャーで計算す …

2021年6月
« 5月   7月 »
 123456
78910111213
14151617181920
21222324252627
282930  

side bar top



アーカイブ

カテゴリー