LuckyTemplates での DAX テーブル関数の使用

LuckyTemplates での DAX テーブル関数の使用

ここでは、テーブル関数と呼ばれる LuckyTemplates の関数のグループを紹介したいと思います。これらの関数には、すでに使用したか、他のトピックで言及した 含まれます。

などの関数を含む、他にもさまざまなテーブル関数があります。ただし、それらすべてを取り上げるわけではありません。

これらの関数をより深く理解したい場合は、をダウンロードし、より具体的な質問についてはを確認することをお勧めします。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

目次

テーブル関数の動作の視覚化

この記事で説明したいのは、テーブル関数がどのように機能するかです。

この例を見ると、このFILTER関数がバックグラウンドで実際に何をしているのかを想像するのは困難です。

LuckyTemplates での DAX テーブル関数の使用

これは、 FILTER関数を呼び出すときに、バックグラウンドで作成されているテーブルを確認する方法がないためです。

ただし、代わりに、数式だけを含む新しいテーブルを作成することもできます。

まず、Sales テーブルを複製した例のように、新しいテーブルを作成するときにテーブル名を入力するだけでテーブルを複製できます。

LuckyTemplates での DAX テーブル関数の使用

ただし、ここではテーブル関数を使用することもできます。ここで行うのは、FILTERを使用し、 Sales テーブルに入力し、フィルター式として機能するQuantity 列を 2 より大きく設定することです。

LuckyTemplates での DAX テーブル関数の使用

元のSales テーブルには約15,000行がありますが、Quantity が 2 より大きい結果のみを表示するように結果がフィルタリングされているため、現在は4,700 行のみになっています。

別の例を示すために、 FILTER関数再度使用し、Products テーブルを挿入し、 Product Name 列をフィルター式として使用し、それを「Product 100」に設定して、 1 つの製品を含むテーブルを返します。

LuckyTemplates での DAX テーブル関数の使用

これは、このテーブル内で数式が実行されているときに舞台裏で起こっていることです。

LuckyTemplates での DAX テーブル関数の使用

まず、顧客名列を通じて評価コンテキストが適用されました。次に、そのProduct テーブルをProduct 100だけに削減することで追加のコンテキストを提供するためにFILTER関数が追加されました。

その後、Product 100がバックグラウンドでフィルタリングされ、Sales テーブルとのリレーションシップに自動的に流れ、最終的にProduct 100 のみの Sales テーブルが返されます。

LuckyTemplates での DAX テーブル関数の使用

VALUES 関数の例

LuckyTemplates のもう 1 つのテーブル関数であるVALUESを紹介します。この関数は、一意の値を含む 1 列のテーブルを返します

たとえば、 Dates テーブル内で、月だけのテーブルを取得できます。

これを行うには、 VALUES関数を使用して、 Dates テーブルMonthName 列を入力するだけです。

LuckyTemplates での DAX テーブル関数の使用

もう 1 つできることは、VALUES関数をメジャー内に置くことです。しかし、繰り返しになりますが、生成されるテーブルを実際に見ることができないため、メジャー内のプロセスを認識するのは困難です。

そのため、これは、これらのテーブル関数が実際にどのように機能するかを評価するのに適した方法です。

しかし、各個人の平均月間売上高を計算したい場合はどうなるでしょうか?

これまでに触れてきたものをどのように組み合わせるかが分からなければ、それを行う方法はすぐにはわかりません。

ここでは、 「Average Monthly Sales」という新しいメジャーを作成します。平均を扱っているので、 関数の使用が最初に思い浮かぶでしょう。

ただし、月次レベルで平均を評価するには反復関数が必要であるため、実際にはここで関数を使用する必要があります。

LuckyTemplates での DAX テーブル関数の使用

反復関数内では、最初のパラメータとしてテーブルを入力できます。ただし、使用できるのは物理テーブルだけではありません。テーブル関数も使用できます。

VALUES はテーブル関数であるため、これを使用してDates テーブルMonthInCalendar 列を挿入します。

反復関数はテーブルを反復処理し、VALUESからMonthInCalendarまでで形成されたテーブルには months と years の一意の値が含まれます。

代わりにMonthName列を使用しただけでは、異なる年にわたって機能しないため、 MonthInCalendarを使用する必要があります。

メジャーの作成を完了するには、式として機能するVALUESの後にTotal Salesを入力します。

LuckyTemplates での DAX テーブル関数の使用

混乱を避けるために、 「データ」画面に移動し、「日付」テーブルを選択し、「MonthInCalendar」の名前を「Month & Year」に変更します。

LuckyTemplates での DAX テーブル関数の使用

次に、 [列で並べ替え]をクリックし、 MonthIn Year 列で並べ替えて、正しく並べ替えられていることを確認します。

LuckyTemplates での DAX テーブル関数の使用

最後に、新しいAverage Monthly Salesメジャーをドラッグ アンド ドロップして、値を確認できるようになりました。

LuckyTemplates での DAX テーブル関数の使用

これまでの作業を確認するために、VALUES関数は一意の値の列を返します。

顧客の現在のコンテキストは、まず[顧客名] 列から取得されます。次に、舞台裏で、month と year の一意の値を含む 1 列のテーブルを作成しました。

AVERAGEX内で、私は月と年を繰り返して、各顧客がその月と年で得た総売上高を計算しました。これらの売上は月ごとにメモリに保存されます。

最後に、これらすべての計算結果が最終的に平均されて、平均月次売上が得られます。

このプロセスは、月と年の代わりにVALUESの中に年を入れて平均年間売上高を計算できるため、非常に多用途です。

さらに、日付だけを使用することに限定されるわけではありません。代わりに製品名 を入力して、製品ごとの平均売上を見つけることもできます。

これらの手法を組み合わせることで、独自の計算をすばやく見つけることができます。

ALL関数の例

LuckyTemplates のもう 1 つのテーブル関数であるALLを紹介します。これは、削除フィルター関数とも呼ばれます。

この関数は、多くの点でVALUES関数の逆のように機能します。

例を示すために、 All Customer Salesという新しいメジャーを作成し、CALCULATE関数を使用して、式としてTotal Salesを入力します。

次に、 ALL関数を使用して、Customers テーブルにテーブルまたは列を含めることができます。

新しいメジャーをドラッグすると、 Total Sales の下の Totalと同じ値が表示されることに気づくかもしれません。

LuckyTemplates での DAX テーブル関数の使用

基本的に、ALL関数は、 Customers テーブルの現在のコンテキストにあるフィルターをすべて削除します。

現在のコンテキストには顧客名があるため、 ALL関数はCustomers テーブルのフィルターを無視し、代わりにすべての結果の合計を返しました。


CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル
DAX 言語で関数を反復する – 詳細な例
LuckyTemplates テーブルを最適化するための高度なヒント

結論

いくつかの主要なテーブル関数と、それらが 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 を使用して数式内に仮想リレーションシップを作成する方法を説明します。