次の方法で共有


CROSSJOIN

適用対象:計算列計算テーブルメジャービジュアル計算

引数内のすべてのテーブルのすべての行のデカルト積を含むテーブルを返します。 新しいテーブルの列は、すべての引数テーブルのすべての列になります。

構文

CROSSJOIN(<table>, <table>[, <table>]…)  

パラメーター

用語 定義
テーブル データのテーブルを返す任意の DAX 式

戻り値

引数内のすべてのテーブルのすべての行のデカルト積を含むテーブル。

解説

  • table 引数の列名は、すべてのテーブルで異なる必要があります。そうしないと、エラーが返されます。

  • CROSSJOIN() によって返される行の合計数は、引数内のすべてのテーブルの行数の積と等しくなります。また、結果テーブルの列の合計数は、すべてのテーブルの列数の合計になります。 たとえば、TableArA 行と cA 列があり、TableBrB 行と cB があり、TableCrC 行と cC 列がある場合、結果のテーブルには rA × rb × rC 行と cA + cB + cC 列が含まれます。

  • この関数は、計算列または行レベルのセキュリティ (RLS) ルールで使用される場合、DirectQuery モードでの使用はサポートされません。

以下の例は、CROSSJOIN() を次の 2 つのテーブルに適用した結果を示しています: ColorsStationery

Colors テーブルには色とパターンが含まれます。

Pattern
[赤] 横縞
[緑] 縦縞
網目

Stationery テーブルには、フォントとプレゼンテーションが含まれます。

フォント プレゼンテーション
セリフ エンボス
サンセリフ 浮き彫り

交差結合を生成する式を以下に示します。

CROSSJOIN( Colors, Stationery)  

テーブル式がどこで必要な場合でも上記の式が使用された場合、式の結果は次のようになります。

Pattern フォント プレゼンテーション
[赤] 横縞 セリフ エンボス
[緑] 縦縞 セリフ エンボス
網目 セリフ エンボス
[赤] 横縞 サンセリフ 浮き彫り
[緑] 縦縞 サンセリフ 浮き彫り
網目 サンセリフ 浮き彫り