CROSSJOIN

适用于:计算列计算表Measure视觉计算

返回一个表,该表 contains 自参数中 all 表中 all 行的笛卡尔 product。 新表中的列 all 参数表中 all 列。

语法

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

参数

术语 定义
table 返回数据表的任何 DAX 表达式

返回 value

一个表,该表 contains 自参数中 all 表中 all 行的笛卡尔 product。

言论

  • 返回 errororall 表中,来自 table 参数的列名必须 all 不同。

  • CROSSJOIN() 返回的行总数等于自变量中 all 表中的行数 product;此外,结果表中的列总数是 all 表中列数的 sum。 例如,TableA 具有 rAcA 列,Table B cB行,TableC 具有 rC 列;然后,生成的表 rA × rb × rCcA + cB + cC 列。

  • 在计算列 or 行级别安全性 (RLS) 规则中使用时,not 支持在 DirectQuery 模式下使用此函数。

以下示例显示了将 CROSSJOIN()应用于两个表的结果:颜色and信纸

颜色contains 颜色 and 模式:

颜色 模式
水平条带
绿 垂直条纹
Crosshatch

表格 文具contains 字体 and 演示文稿:

字体 介绍
衬线 浮雕
sans-serif

要 generate 交叉联接的表达式如下所示:

CROSSJOIN( Colors, Stationery)

在预期表表达式的位置使用上述表达式时,表达式的结果如下所示:

颜色 模式 字体 介绍
水平条带 衬线 浮雕
绿 垂直条纹 衬线 浮雕
Crosshatch 衬线 浮雕
水平条带 sans-serif
绿 垂直条纹 sans-serif
Crosshatch sans-serif