次の方法で共有


CROSSJOIN

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

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

構文

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

パラメーター

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

戻り値

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

備考

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

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

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

次の例は、CROSSJOIN() を 2 つのテーブルに適用した結果を示しています。ひな形

表には、色とパターンが含まれています。

パターン
赤い 水平ストライプ
縦ストライプ
青い ハッチング

ひな形 表には、フォントとプレゼンテーションが含まれています。

フォント プレゼンテーション
セリフ エンボス
sans-serif 刻ま れた

クロス結合を生成する式を次に示します。

CROSSJOIN( Colors, Stationery)

テーブル式が想定される場所で上記の式を使用する場合、式の結果は次のようになります。

パターン フォント プレゼンテーション
赤い 水平ストライプ セリフ エンボス
縦ストライプ セリフ エンボス
青い ハッチング セリフ エンボス
赤い 水平ストライプ sans-serif 刻ま れた
縦ストライプ sans-serif 刻ま れた
青い ハッチング sans-serif 刻ま れた