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

如何在Power Query中执行交叉连接或生成笛卡尔积

使用Power Query实现两个表格的全组合(笛卡尔积)

当然可以用Power Query实现这种两个表格的全组合(也就是笛卡尔积),下面是两种简单可行的方法:

方法一:添加自定义列并展开

假设你已将两个表格加载到Power Query中,表1命名为客户表(包含customer a、customer b、customer c),表2命名为产品表(包含product 1、product 2):

  • 选中客户表进入Power Query编辑器,切换到添加列选项卡,点击自定义列
  • 在弹出的公式输入框中输入:产品表,点击确定。此时会生成一个嵌套列,每个客户行对应包含所有产品行的子表
  • 点击这个嵌套列标题右侧的展开图标,选择展开到新行,即可将每个客户与所有产品一一配对
  • 最后按需整理列名、删除冗余列,就能得到你想要的组合结果

方法二:通过辅助列实现合并查询

如果你的表格数据量较大,这种方法也适用:

  • 分别给客户表和产品表添加一个辅助列,列名设为匹配键,所有行的值都设为1
  • 选中客户表进入Power Query编辑器,点击合并查询,选择产品表作为合并对象,匹配条件选择两个表的匹配键,连接类型选择完全外部
  • 展开合并后的产品表列,然后删除两个表的匹配键列,同样能得到全组合的结果

用你的示例数据操作后,最终会生成6行数据:
customer a + product 1、customer a + product 2、customer b + product 1、customer b + product 2、customer c + product 1、customer c + product 2

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 17:50:27