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

Power BI中基于DAX按条件合并多行并聚合数据的技术求助

在Power BI中合并相同BatchNo的Loading Dates并汇总NetWeight Shipped的解决方案

方法一:Power Query 数据预处理(推荐,数据层面永久整合)

这种方式直接调整数据源结构,后续报表使用更省心:

  • 点击【转换数据】进入Power Query编辑器
  • 选中BatchNo列,点击顶部【转换】选项卡的【分组依据】
  • 在分组设置窗口中配置:
    • 分组列选择BatchNo
    • 添加第一个聚合列:名称填TotalNetWeight,操作选【求和】,关联列选NetWeight Shipped
    • 添加第二个聚合列:名称填CombinedLoadingDates,操作选【所有行】,关联列选Loading Dates
  • 点击CombinedLoadingDates列右侧的展开箭头,选择【提取值】,设置分隔符(如逗号、分号)后确认
  • 关闭并应用,此时数据已按BatchNo合并日期并完成重量汇总

方法二:DAX度量值(报表可视化时动态计算)

若无需修改源数据,可通过DAX在报表中实现需求:

  1. 创建汇总重量的度量值:
Total NetWeight Shipped = SUM('你的数据表名'[NetWeight Shipped])
  1. 创建合并日期的度量值(日期类型转规范文本格式,避免显示异常):
Combined Loading Dates = 
CONCATENATEX(
    VALUES('你的数据表名'[Loading Dates]),
    FORMAT('你的数据表名'[Loading Dates], "yyyy-MM-dd"),
    ", "
)
  • 在报表中插入表格,将BatchNo列拖入值区域,再添加上述两个度量值,即可看到每个BatchNo对应的合并日期和汇总重量

若Loading Dates存在重复值,可在外层套DISTINCT来去重:

Combined Loading Dates = 
CONCATENATEX(
    DISTINCT('你的数据表名'[Loading Dates]),
    FORMAT('你的数据表名'[Loading Dates], "yyyy-MM-dd"),
    ", "
)

内容的提问来源于stack exchange,提问作者Peter Nguy Nguyen

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 11:25:17