171_DAX 按照维度计算累计值

2026-04-20 09:06:13
309
1分钟33秒

一、背景

今天来看一个比较简单的案例,按照维度计算累计值。

按照惯例,先看下结果。

171-1
171-1

注意矩阵中标红的位置,年月是按照每年12个月累计,月份是按照所有月份累计,不区分年。

二、模型 & DAX

我们使用的数据模型,在前面已经发布,可以在编号 148 这篇文章中去找到。

表间关系

171-2
171-2

本案例中涉及的表主要是: A00_Calendar T00_产品表 T05_订单子表 具体可在关系视图中查看。

几个度量值都比较简单

171-3
171-3

02_销售金额累计_年_月 =
VAR _context =
    WINDOW (
        1,ABS,
        0,REL,
        ALLSELECTED ( A00_Calendar ),
        ORDERBY ( A00_Calendar[C18_YearMonthM], ASC ),
        KEEP,
        PARTITIONBY ( A00_Calendar[C28_Year] )
    )
VAR result =
    IF ( [01_销售金额], CALCULATE ( [01_销售金额], _context ), BLANK () )
RETURN
    result

三、总结

1、类似的累计计算使用 DAX 窗口函数可以很好的计算。

2、这类窗口函数的学习可以借鉴 Excel 中的单元格绝对和相对引用逻辑。

Power BIdax窗口函数