LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

このチュートリアルでは、LuckyTemplates の DAX を使用して購入間の日数の差を計算する方法を学習します。このトピックは LuckyTemplates サポート フォーラムから来たもので、私がどのように解決したかを紹介します。これは興味深いシナリオであり、ビジネスの世界では非常に一般的です。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

この例では、何度も購入した顧客を対象としており、購入日間の違いを確認したいと考えています。

重要なのは、DAX 数式を簡素化することです。 

私は常に、メジャー分岐テクニックを利用し、正しい DAX 関数を使用して組み合わせることにより、数式を短くシンプルにすることをお勧めします。モデルに複雑な数式は実際には必要ありません。複雑なシナリオで使用する手法の 1 つは変数 ( ) であり、このチュートリアルで説明します。

目次

サンプルデータセット

まず、モデルのセットアップを見てみましょう。これは私が作成した単なるデモ データ セットです。この場合、「購入日」列に注目します。作成する必要がある 1 つのものは数値 インデックス列です。ロジックを簡素化するためにこの列を処理するためです。

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

したがって、ここで任意のフィルター (顧客、製品、場所など) を適用して、顧客が最後に購入した日 と前の購入日との差を計算できるようにしたいと考えています。この例では、場所に動的フィルターがあります。場所 ID をクリックするとデータが変更され、選択した場所の結果が表示されます。

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

このテーブルには、注文 ID、顧客 ID、特定の場所における顧客の購入日、および購入間の日数の差が表示されます。ここでもう 1 つ注意すべき点は、1 日に 2 つの購入がある場合、 2 番目の日付は前日と変わらないため、ゼロになる必要があるということです。

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

購入間の差異を計算するための DAX 式

それでは、式を見てみましょう。ここでは多くの変数が利用されているため、もう少しロジックを検討する必要がある場合には、これを強くお勧めします。後で数値を監査して、何が起こっているのかを理解するのがはるかに簡単です。

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

ここでのすべての結果は個別に計算されることに注意してください。したがって、このテーブル内のすべての結果または行で、これらの変数が何を計算しているかを解明する必要があります。たとえば、2016 年 8 日中 7 日の結果は 12 (購入の最終日である 7 月 26 日の間の日数) です。

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

を使用してインデックス番号 ( IndexNum ) (この場合は 430)から開始します。次に、同じこと (インデックスの MAX) を計算して前のインデックス番号 ( PreviousIndexNum ) を計算しますが、 内の関数を使用して計算するコンテキストを変更します。

を使用して現在の日付 ( CurrentDate )を計算します。この例の現在の日付は、2016 年の 8 日の 7 日です。最後の変数は前の日付 ( PriorDate ) ですが、すでに PreviousIndexNum があるため、これは簡単に把握できます。

式の 2 番目の部分 ( ステートメント) は、作成した変数を単純に使用し、最初の日付を 0 として特定します。次に、PriorDate から CurrentDate を減算して、 12 日の差を取得します。

これが、LuckyTemplates での購入間の日数の差を計算する方法です。


LuckyTemplates の最終購入日: 顧客が最後に購入したのはいつですか?
LuckyTemplates で複数の日付を操作する方法
LuckyTemplates で DATESBETWEEN を使用してローリング合計を計算する

結論

ここでメジャー分岐がどのように機能するかを理解していただければ幸いです。1 つの変数 (IndexNum) から始めて、それを使用して次の変数を計算する、というようにしていきました。 

この作業に取り組むのは本当に楽しかったし、これが多くの人に役立つと確信しています。これは、日数の差を計算する必要がある一般的なシナリオです。買い物やイベントの合間に発生する可能性があります。

このトピックについて詳しく知りたい場合は、ビデオと以下のリンクをご覧ください。

乾杯!

***** LuckyTemplates を学習していますか? *****







Power Automate の文字列関数: Substring と IndexOf

Power Automate の文字列関数: Substring と IndexOf

Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates ツールチップを使用すると、より多くの情報を 1 つのレポート ページに圧縮できます。効果的な視覚化の手法を学ぶことができます。

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を作成し、データを受信する方法を学んでいます。

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で簡単に日付テーブルを作成する方法について学びましょう。データの分析と視覚化のための効果的なツールとして活用できます。

2 つの方法による SharePoint 列の検証

2 つの方法による SharePoint 列の検証

SharePoint 列の検証の数式を使用して、ユーザーからの入力を制限および検証する方法を学びます。

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel ファイルおよび CSV ファイルにエクスポートする方法を学び、さまざまな状況に最適なエクスポート方法を決定できるようにします。

Power Automate のオンプレミス データ ゲートウェイ

Power Automate のオンプレミス データ ゲートウェイ

ユーザーがコンピューターから離れているときに、オンプレミス データ ゲートウェイを使用して Power Automate がデスクトップ アプリケーションにアクセスできるようにする方法を説明します。

DAX 数式での LASTNONBLANK の使用

DAX 数式での LASTNONBLANK の使用

DAX 数式で LASTNONBLANK 関数を使用して、データ分析の深い洞察を得る方法を学びます。

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

LuckyTemplates で予算分析とレポートを実行しながら、CROSSJOIN 関数を使用して 2 つのデータ テーブルをバインドする方法を学びます。

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

このチュートリアルでは、LuckyTemplates TREATAS を使用して数式内に仮想リレーションシップを作成する方法を説明します。