Translate

2021年6月6日日曜日

【Power BI備忘録】選択した月から、過去Nカ月分のデータを表示するDAX

 「Power BIで選択した月から、過去Nカ月分のデータを表示する方法」をネットで検索すると、「切断された日付テーブル(リレーションシップのない日付テーブル)」をスライサーに利用する方法がよく紹介されています。


「リレーションシップのない日付テーブル」で選択した「月」の数字によって、図表の軸の「月」の数字をフィルターするという方法です。


しかし、「リレーションシップのない日付テーブル」を使わなくても、DATESINPERIOD関数を使えば「選択した月から、過去Nカ月分のデータを表示する」ことが可能です。

ただし、図表の日付軸にファクトテーブルの日付列を設定する必要があったりします。

DAXもDATESINPERIOD関数を使った場合は、下記のような簡単な内容です。

Measure (last n months) =

CALCULATE (

    SUM ( Table[Sales] ),

    DATESINPERIOD ( ‘Date'[Date], MAX ( ‘Date'[Date] ), – [N Value], MONTH )

)


「リレーションシップのない日付テーブル」など作成せずに済むので、ファクトテーブルの日付列と日付テーブルの日付を利用して試してみる価値はあります。


ネット上には、「ベストプラクティス」ではない事例が数多くあるようです。


Power BIは日本語の情報が少なく、ネット上の「ベストでない情報」に翻弄されることがよくあるようです。


私もDATESINPERIOD関数が役立つことに気づくのにかなり時間がかかりました。





0 件のコメント:

コメントを投稿