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

如何在PowerBI中编写DAX公式为客户表添加本年销售总额列?

计算客户本年销售总额的DAX实现

给客户表添加计算列,统计每位客户的本年销售总额,有两种常用的DAX写法:

方法一:使用CALCULATE(推荐)

这种写法利用DAX的上下文自动筛选当前客户,代码简洁高效:

本年销售总额 = 
CALCULATE(
    SUM(销售表[销售额]),
    日历表[IsCurrentYear] = TRUE()
)

说明

  • CALCULATE会自动识别当前客户表行的AccountID上下文,只统计该客户的销售数据
  • 第二个参数添加本年筛选条件,限定只计算日历表中IsCurrentYear为TRUE的时段数据
  • 如果存在额外的筛选上下文干扰,可添加ALL(客户表)确保只聚焦当前客户:
    本年销售总额 = 
    CALCULATE(
        SUM(销售表[销售额]),
        日历表[IsCurrentYear] = TRUE(),
        ALL(客户表)
    )
    

方法二:使用SUMX+FILTER(适合理解筛选逻辑)

如果你更习惯用FILTER明确指定筛选条件,可以用这种写法:

本年销售总额 = 
SUMX(
    FILTER(
        销售表,
        销售表[AccountID] = 客户表[AccountID] &&
        RELATED(日历表[IsCurrentYear]) = TRUE()
    ),
    销售表[销售额]
)

说明

  • FILTER遍历销售表,筛选出与当前客户AccountID匹配、且关联日历表中属于本年的记录
  • SUMX对筛选后的销售记录求和,得到该客户的本年销售总额
  • 需确保销售表与日历表已通过日期字段建立正确关系,否则RELATED无法获取到IsCurrentYear的值

注意事项

确保你的模型表关系正确:

  • 客户表 ↔ 销售表:通过AccountID建立一对多关系
  • 销售表 ↔ 日历表:通过日期字段(如销售日期)建立一对多关系

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.01 14:19:53