タイム インテリジェンスを使用する
すべてのデータ アナリストは時間を扱う必要があります。 日付は重要なので、日付のテーブルを作成またはインポートすることを強くお勧めします。 この方法を使用すると、DAX での日付と時刻の計算がはるかに簡単になります。
一部の時間の計算は DAX で簡単に実行できますが、他はより難しくなります。 たとえば、次のスクリーンショットは、累計を表示する場合の結果を示しています。
合計は月ごとに増加しますが、年が変わるとリセットされることがわかります。 他のプログラミング言語では、この結果はかなり複雑になる可能性があり、多くの場合、いくつかの変数とコードのループを伴います。 DAX では、次の例に示すように、この処理が非常にシンプルになります。
YTD Total Sales = TOTALYTD
(
SUM('Sales OrderDetails'[Total Price])
, Dates[Date]
)
YTD Total Sales メジャーでは、TOTALYTD と呼ばれる組み込みの DAX 関数が使用されます。 この関数は、計算の種類の引数を受け取ります。 このモジュールを通して行ってきたように、SUM 関数を使用して Total Price を取得できます。 操作する 2 番目の引数は、Dates フィールドです。 Dates テーブルを使用して、このメジャーを視覚エフェクトに追加すると、目的の累計の結果が得られます。 YTD、MTD、QTD では、同様の方法ですべての関数を使用できます。
時間を使用するもう 1 つの例は、現在の売上と前の期間の売上を比較することです。 たとえば、月の売上合計を前月の売上合計の横に表示する場合は、次の例に示すように、DAX メジャーの定義を入力します。
Total Sales Previous Month = CALCULATE
(
sum('Sales OrderDetails'[Total Price])
, PREVIOUSMONTH(Dates[Date])
)
このメジャーでは CALCULATE 関数が使用され、目的の方法でこの式を評価するためにコンテキストをオーバーライドすることが示されています。 このモジュール全体で行っているように、Total Price を合計しています。 2 番目の引数では、オーバーライド用に PREVIOUSMONTH を使用しています。これにより、どの月が既定値であるかに関係なく、前の月になるようにシステムでオーバーライドする必要があることが Power BI に指示されます。
次のスクリーンショットは、テーブルの視覚エフェクトの結果を示しています。
各月をサイドバイサイドで調べると、7 月の売上合計が 6 月の売上合計と比較されていることがわかります。
ヘルプが必要ですか? Microsoft のトラブルシューティング ガイドをご覧になるか、問題を報告して具体的なフィードバックをお送りください。