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

基于双事实表创建符合过滤需求的新度量求助

解决方案

基于你的需求,调整DAX度量即可实现两个场景的要求,以下是具体步骤和代码:

假设模型关系

默认你的数据模型是:维度表dim_p的name字段关联两个事实表fact1(存储V1)和fact2(存储V2)的对应名称字段。

创建所需度量

1. 全量V1总和(不受名称过滤影响)

这个度量确保无论是否过滤名称,都返回所有名称对应的V1总和:

Total V1 = CALCULATE(SUM(fact1[V1]), ALL(dim_p[name]))

2. 动态V2总和(适配过滤场景)

去掉你原来的REMOVEFILTERS,直接使用基础求和,这样无过滤时返回全量V2,过滤名称时返回对应筛选后的V2总和:

Total V2 = SUM(fact2[V2])

3. 关联名称拼接

返回当前上下文的名称集合,无过滤时显示所有名称,过滤时显示选中的名称:

Associated Names = CONCATENATEX(VALUES(dim_p[name]), dim_p[name], ", ")

场景验证

  • 场景1(无过滤):将三个度量添加到报表(行区域无需放任何字段),会返回一行数据:Total V1为所有V1的总和,Total V2为所有V2的总和,Associated Names拼接所有名称。
  • 场景2(过滤名称A、B):在报表中筛选dim_p[name]为A和B,返回一行数据:Total V1仍为全量总和,Total V2为A、B对应的V2之和(3+4),Associated Names显示"A, B"。

补充说明

如果你的V1总和在场景2中需要跟随名称过滤(即只计算A、B的V1总和),只需将Total V1修改为SUM(fact1[V1])即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 16:35:20