Power BI Desktop で計算テーブルを使用するUsing calculated tables in Power BI Desktop

計算テーブルを使うと、モデルに新しいテーブルを追加できます。With calculated tables, you can add a new table to the model. しかし、値のクエリを実行してデータ ソースから新しいテーブルの列に値を読み込む代わりに、テーブルの値を定義する Data Analysis Expressions (DAX) 数式を作成することができます。But instead of querying and loading values into your new table's columns from a data source, you create a Data Analysis Expressions (DAX) formula that defines the table’s values. Power BI Desktop では、レポート ビューまたはデータ ビューの [新しいテーブル] 機能を使用して計算テーブルを作成します。In Power BI Desktop, calculated tables are created by using the New Table feature in Report View or Data View.

ほとんどの場合、外部データ ソースからモデルにデータをインポートします。Most of the time, you import data into your model from an external data source. それでも、計算テーブルにはいくつかの利点があります。However, calculated tables provide certain advantages. 計算テーブルは、一般に計算の途中経過に最適です。データ モデルの一部として格納されるのではなく、その場で計算されたりクエリの一部として計算されたりするものです。Calculated tables are generally best for intermediate calculations and data you want stored as part of the model rather than calculated on the fly or as part of a query.

クエリの一部として作成するテーブルとは違って、レポート ビューまたはデータ ビューで作成する計算テーブルは、モデルに既に読み込まれているデータに基づいて作成されます。Unlike tables created as part of a query, calculated tables created in Report View or Data View are based on data you’ve already loaded into the model. たとえば、2 つのテーブルの和集合またはクロス結合を選択できます。For example, you might choose to union or cross join two tables.

通常のテーブルと同じように、計算テーブルには他のテーブルとのリレーションシップを設定できます。Just like normal tables, calculated tables can have relationships with other tables. 計算テーブルの列にもデータ型や書式設定があり、データ カテゴリに所属させることもできます。The columns in your calculated table have data types, formatting, and can belong to a data category. 列に好きな名前を付けたり、列を他のフィールドと同じようにレポートのビジュアルに追加したりできます。You can name your columns whatever you want, and add them to a report visualization just like other fields. データを取得したテーブルのいずれかが最新の情報に更新されるか、他の方法で更新されると、計算テーブルは再計算されます。Calculated tables are re-calculated if any of the tables it pulls data from are refreshed or updated in any way.

計算テーブルは、結果の計算に Data Analysis Expressions (DAX) を使用します。これは、Power BI Desktop で取り扱っているようなリレーショナル データを操作することを意図した数式言語です。Calculated tables calculate results by using Data Analysis Expressions (DAX), a formula language meant to work with relational data like in Power BI Desktop. DAX は 200 以上の関数、演算子、およびコンストラクトを含むライブラリを提供しているため、数式を作成する際の柔軟性が非常に高く、データ分析に必要なほとんどすべての計算結果を得ることができます。DAX includes a library of over 200 functions, operators, and constructs, providing immense flexibility in creating formulas to calculate results for just about any data analysis need.

例を見てみましょうLet’s look at an example

Contoso 社のプロジェクト マネージャー Jeff は、北西部の従業員のテーブルと、南西部の従業員のテーブルを持っています。Jeff, a project manager at Contoso, has a table with employees on the in Northwest and another table with employees in the Southwest. Jeff は、2 つのテーブルを合わせて 1 つのテーブルにしたいと考えています。Jeff wants to put the two tables together into a single table.

NorthwestEmployeesNorthwestEmployees

SoutwestEmployeesSoutwestEmployees

この 2 つのテーブルを合わせて 1 つの計算テーブルにする操作は非常に簡単です。Putting these two tables together with a calculated table is quite easy. 計算テーブルはレポート ビューとデータ ビューのどちらでも作成できますが、新しい計算テーブルをすぐに確認できるので、データ ビューで操作すると少し簡単になります。While Jeff can create a calculated table in either Report View or Data View, it’s a bit easier to do it in Data View because he can immediately see his new calculated table.

データ ビュー[モデリング] タブで [新しいテーブル]をクリックします。In Data View, on the Modeling tab, Jeff clicks New Table. 数式バーが表示されます。A formula bar appears.

次の数式を入力します。Jeff then enters the following formula:

Western Region Employees という名前の新しいテーブルが作成されます。A new table named Western Region Employees is created.

この新しい Western Region Employees テーブルは、フィールドの一覧に他のテーブルと同じように表示されます。Jeff’s new Western Region Employees table appears just like any other table in the Fields list. 他のテーブルとのリレーションシップを作成したり、計算列やメジャーを追加したり、任意のフィールドを他のテーブルと同じようにレポートに追加したりできます。He can create relationships to other tables, add calculated columns and measures, and add any of its fields to reports just like any other table.

計算テーブル用の関数Functions for calculated tables

計算テーブルは、テーブルを返す任意の DAX 式を使って定義できます。別のテーブルを単に参照するだけでも構いません。Calculated tables can be defined by any DAX expression that returns a table, including a simple reference to another table. 例:For example:

DAX による計算テーブルを使うと、分析上の多くの課題を解決できます。You can use calculated tables with DAX to solve many analytical problems. ここでは、計算テーブルについて簡単に紹介するだけにします。We’ve only provided a quick introduction to calculated tables here. 計算テーブルを使用する際に役立つ一般的な DAX テーブル関数には、次のようなものが含まれています。As you start working with calculated tables, here are some of the more common DAX table functions you might find useful:

<TABLE> DISTINCT VALUES CROSSJOIN UNION NATURALINNERJOIN NATURALLEFTOUTERJOIN INTERSECT CALENDAR CALENDARAUTO<TABLE> DISTINCT VALUES CROSSJOIN UNION NATURALINNERJOIN NATURALLEFTOUTERJOIN INTERSECT CALENDAR CALENDARAUTO

これらの関数と、テーブルを返す他の DAX 関数については、「DAX 関数リファレンス」をご覧ください。See the DAX Function Reference for these and other table returning DAX functions.