You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用DAX实现两张表的笛卡尔积关联以生成目标结果?

用DAX生成两张表的笛卡尔积结果

你的需求本质是获取两张表的笛卡尔积(即tblA的每一行与tblB的所有行进行组合),DAX不需要用循环,直接用内置的CROSSJOIN函数就能实现。

表结构回顾

  • tblA(仅1列):
    Value
    1
    2
  • tblB(多列):
    Col1Col2
    TestA
    DumpB

实现DAX表达式

创建新表的代码如下:

NewTable = CROSSJOIN(tblB, tblA)

结果说明

CROSSJOIN函数会自动将第一个表(tblB)的每一行,与第二个表(tblA)的每一行进行组合,生成的结果完全符合你的要求:

Col1Col2Value
TestA1
DumpB1
TestA2
DumpB2

如果需要自定义列顺序,也可以用SELECTCOLUMNS配合CROSSJOIN来指定,不过上面的写法已经匹配你需要的列顺序,无需额外调整。

内容的提问来源于stack exchange,提问作者user3011414

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 16:50:29