You need to enable JavaScript to run this app. 排除未完成年度的2015-2020年均订单量DAX计算方法
优惠活动
大模型
产品
解决方案
定价
更多

排除未完成年度的2015-2020年均订单量DAX计算方法

问题根因

原有Avg. Annual Orders公式通过VALUES('Date'[Year])获取数据覆盖的全部年份列表参与计算,会把统计时点(2021年3月7日)尚未结束、仅累计121单的2021年纳入平均值计算范围,最终结果和目标值存在明显偏差。

调整方案

方案1:固定区间过滤(适配当前明确的2015-2020计算需求)

直接在年份遍历环节增加过滤条件,仅保留2015到2020的完整年度参与计算,修改后的DAX如下:

Avg. Annual Orders = 
AVERAGEX(
    FILTER(
        VALUES('Date'[Year]),
        // 限定计算范围为2015-2020,剔除2021年数据
        'Date'[Year] >= 2015 && 'Date'[Year] <= 2020
    ),
    [Total Orders]
)

结果验证:6个完整年度的总订单量为7978单,单年均值约1330单,和预期目标完全匹配。

方案2:自动识别完整年度(适配长期迭代的动态计算场景)

如果不想硬编码年份边界,可通过日期表自动筛选所有覆盖了完整自然年度的年份,未来数据更新后无需手动修改公式,修改后的DAX如下:

Avg. Annual Orders = 
AVERAGEX(
    FILTER(
        VALUES('Date'[Year]),
        // 判断对应年份是否覆盖到当年12月31日,仅保留完整年度
        CALCULATE(MAX('Date'[Date])) >= DATE('Date'[Year], 12, 31)
    ),
    [Total Orders]
)

这个方案的逻辑是:2021年在日期表中的最大日期为2021年3月7日,早于当年12月31日,会被自动排除在计算范围外;后续数据更新到2021年12月31日及以后时,2021年才会自动被纳入年度平均值的计算。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.31 07:57:04