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

如何创建含全部分组汇总的calculated column并关联measures可视化

问题根因

你写的DAX表达式存在两个核心逻辑错误,所以达不到预期:

  • SWITCH函数按顺序匹配条件,只要g1/g2/g3任意一个条件命中,就会直接返回对应的分组名,后续g1 || g2 || g3的条件永远不会被触发,根本不可能返回"All Groups"。
  • 计算列基于行上下文计算,每一行数据只会生成一个值,无法让同一行同时归属于单个分组和All Groups分组,也就不可能通过普通行级计算列实现All Groups对应三个分组汇总的效果。

推荐解决方案

你需要的其实是一个支持汇总All Groups的维度,不需要修改原表结构,新建独立计算表+适配度量值是最优方案:

  1. 新建计算表作为分组维度,不需要和原表建立关系:
Group_Dimension = 
DATATABLE(
    "分组名", STRING,
    {{"Group1"}, {"Group2"}, {"Group3"}, {"All Groups"}}
)
  1. 改写你现有用于可视化的度量值,以原有度量值为[指标值]为例:
分组适配指标 = 
VAR 选中分组 = SELECTEDVALUE(Group_Dimension[分组名])
RETURN
SWITCH(
    TRUE(),
    选中分组 = "Group1", CALCULATE([指标值], '你的表名'[account no] = 3),
    选中分组 = "Group2", CALCULATE([指标值], '你的表名'[account no] IN {4,5,6} && '你的表名'[account group] <> 20),
    选中分组 = "Group3", CALCULATE([指标值], '你的表名'[account group] = 20),
    选中分组 = "All Groups", CALCULATE([指标值], '你的表名'[account no] =3 || ('你的表名'[account no] IN {4,5,6} && '你的表名'[account group] <>20) || '你的表名'[account group] =20),
    [指标值]
)

注意:把代码里的你的表名替换为你实际的表名,[指标值]替换为你原有要展示的度量值。

后续可视化直接把Group_Dimension[分组名]作为轴/图例,用[分组适配指标]作为值即可,完全符合你的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 10:15:03