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

如何在Power Query中实现交叉连接(笛卡尔积)

在Power BI查询编辑器中实现无共同列表的笛卡尔积

需求说明

需要将无共同列的表A和表B生成笛卡尔积(全组合),示例如下:

表A

Column1Column2
1A
1B

表B

Column3
2G
4H

期望结果表C

Column1Column2Column3
1A2G
1B2G
1A4H
1B4H

方法一:可视化操作(添加辅助列)

  • 打开查询编辑器,确保表A和表B已加载
  • 选中表A,点击【添加列】→【自定义列】,输入公式 =1,将列名改为Key
  • 对表B执行同样操作,添加值为1的Key列
  • 回到表A,点击【合并查询】→【合并查询作为新查询】,在弹窗中选择表B,连接类型选完全外部,匹配列选两个表的Key
  • 点击确定后,展开合并列中表B的所有字段,最后删除多余的Key列即可

方法二:M语言直接生成(更高效)

  • 在查询编辑器中,点击【主页】→【新建源】→【空白查询】
  • 打开【高级编辑器】,替换原有代码为以下内容(注意替换表名):
let
    表A = 源{[Name="表A"]}[Data], // 替换成你的表A实际名称
    表B = 源{[Name="表B"]}[Data], // 替换成你的表B实际名称
    添加表B数据 = Table.AddColumn(表A, "表B数据", each 表B),
    展开所有列 = Table.ExpandTableColumn(添加表B数据, "表B数据", Table.ColumnNames(表B), Table.ColumnNames(表B))
in
    展开所有列
  • 点击【完成】,即可得到笛卡尔积结果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 09:12:47