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

求DAX公式:多公司跨不同时间跨度的平均值计算

满足需求的DAX度量值实现

核心逻辑

  1. 单公司筛选场景:直接返回该公司的原始Count数据;
  2. 多公司(包含Company 1)筛选场景:
    • Company 1保留所有日期的实际Count值;
    • 其他公司当月天数>6时,用其当月第6天的Count值替代NULL;
    • 基于上述规则处理后的数据计算平均值。

DAX度量值代码

Adjusted Avg Count = 
VAR SelectedCompanies = VALUES('业务数据'[公司])
VAR IsSingleCompany = COUNTROWS(SelectedCompanies) = 1
VAR CurrentMonthDay = MAX('业务数据'[当月天数])
-- 预取非Company1公司的6日Count值
VAR NonComp1_Day6_Value = 
    CALCULATE(
        MAX('业务数据'[Count]),
        ALL('业务数据'),
        '业务数据'[公司] IN EXCEPT(SelectedCompanies, {"Company 1"}),
        '业务数据'[当月天数] = 6
    )
RETURN
IF(
    IsSingleCompany,
    -- 单公司筛选,返回原始Count
    MAX('业务数据'[Count]),
    -- 多公司筛选,计算调整后的平均值
    AVERAGEX(
        SelectedCompanies,
        VAR CurrentComp = [公司]
        VAR CompEffectiveCount = 
            IF(
                CurrentComp = "Company 1",
                MAX('业务数据'[Count]),
                IF(
                    CurrentMonthDay <= 6,
                    MAX('业务数据'[Count]),
                    NonComp1_Day6_Value
                )
            )
        RETURN CompEffectiveCount
    )
)

代码细节说明

  • SelectedCompanies:捕获当前筛选上下文的所有公司集合;
  • IsSingleCompany:判断是否为单公司筛选状态;
  • NonComp1_Day6_Value:提前计算非Company1公司在当月第6天的Count值,避免重复计算;
  • 外层IF分支:区分单/多公司场景,多公司场景下用AVERAGEX遍历每个公司,按规则生成有效Count后取平均。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 09:15:48