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

PowerBI:如何忽略FACT求和为零的行并保留全部列?

问题与解决方案

原始数据表

IDDIM1DIM2FACTCOMMENT
1ATEST-5.00应隐藏
2ATEST5.00也应隐藏
3BABC-1.30忽略备注
4BABC1.30更多忽略备注
5CTEST34.00应显示
6ATEST2-2.20不显示
7ATEST22.20更多不显示
8BABCD7.20应可见
9BABC1.30可见

需求

忽略按DIM1、DIM2分组后FACT列求和为零的组内所有行,同时保留ID、COMMENT等全部列。

预期结果

IDDIM1DIM2FACTCOMMENT
5CTEST34应显示
8BABCD7.20应可见
9BABC1.30可见

现有Power Query实现思路

按DIM1/DIM2分组计算FACT总和,筛选总和非零的组后关联原表,找回ID、COMMENT等列。

DAX替代方案

方案1:创建计算表

直接生成符合要求的结果表,步骤为先计算每组总和,筛选有效组,再关联原表保留所有列:

筛选后表 = 
VAR 分组总和 = 
    SUMMARIZE(
        '原始表',
        '原始表'[DIM1],
        '原始表'[DIM2],
        "组FACT总和", SUM('原始表'[FACT])
    )
VAR 有效组 = 
    FILTER(分组总和, [组FACT总和] <> 0)
RETURN
    NATURALLEFTOUTERJOIN('原始表', 有效组)

方案2:添加计算列标记有效行

如果需要保留原表结构,仅标记可显示的行,可添加如下计算列,之后筛选该列值为TRUE的行即可:

是否显示 = 
VAR 当前组总和 = 
    CALCULATE(
        SUM('原始表'[FACT]),
        ALLEXCEPT('原始表', '原始表'[DIM1], '原始表'[DIM2])
    )
RETURN
    当前组总和 <> 0

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 05:47:46