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

DAX结合ALLEXCEPT与日期表累计过滤:上线周非空条件适配方案

正确实现写法

Avg Rating Since Launch = 
VAR CurrentProduct = SELECTEDVALUE('table'[Product Name])
VAR CurrentRetailer = SELECTEDVALUE('table'[Retailer])
-- 获取当前产品+零售商标识的最早非空上线周
VAR FirstLaunchWeek = CALCULATE(
    MIN('table'[Launch Week]),
    ALL('table'),
    'table'[Product Name] = CurrentProduct,
    'table'[Retailer] = CurrentRetailer,
    NOT(ISBLANK('table'[Launch Week]))
)
RETURN
CALCULATE(
    [Avg Rating This Week],
    ALLEXCEPT('table', 'table'[Product Name], 'table'[Retailer]),
    -- 过滤掉上线周为空、以及早于上线周的条目
    NOT(ISBLANK('table'[Launch Week])),
    'DateTable'[Date] >= FirstLaunchWeek
)

如果需要支持同时筛选多个产品/零售商的场景,可将变量中的SELECTEDVALUE替换为VALUES,适配多值筛选场景。

原有写法问题说明

  • 将Launch Week字段加入ALLEXCEPT参数的写法,等价于保留当前上下文的上线周筛选,仅能统计单周数据,无法实现跨周累计的效果
  • 未加入上线周非空、日期大于等于首个上线周的过滤条件,会将上线前、上线周为空的无效条目纳入统计,导致结果不符合预期

效果验证

当筛选维度为该产品的首个上线周时,度量值计算范围和[Avg Rating This Week]完全一致,计算结果相等;筛选后续周度时,会自动累计从上线周到当前筛选周的所有有效数据,和周度平均评分的计算结果自然产生差异,符合需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 16:09:01