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

DAX含SWITCH的表达式工作原理?如何修改实现YTD统计?

修改DAX度量实现年初至今(YTD)数据统计

你原来的DAX度量是用来获取上月的年、月及月份名称,若要实现**截止到上月末的年初至今(YTD)**统计,可以按以下方式修改各度量,同时提供核心的YTD统计度量:

一、调整辅助度量

1. mYear(YTD对应的年份)

原逻辑是1月取去年、其他月份取今年,这个逻辑适配截止上月末的YTD场景(1月时YTD为去年全年,其余月份为当年1月到上月),可以简化写法:

mYear = IF(MONTH(TODAY())=1, YEAR(TODAY())-1, YEAR(TODAY()))

2. mMonth(YTD的截止月份)

同样沿用取上月月份的逻辑,简化后:

mMonth = IF(MONTH(TODAY())=1, 12, MONTH(TODAY())-1)

3. mMonth_name(截止月份名称)

这个度量无需修改,基于调整后的mMonth依然能正确生成月份缩写:

mMonth_name = FORMAT(DATE(1,[mMonth],1),"MMM")

二、核心YTD统计度量

基于上面的辅助度量,以统计销售额为例,编写YTD累计度量:

Sales_YTD = 
VAR EndDate = DATE([mYear], [mMonth], EOMONTH(DATE([mYear], [mMonth],1),0))
VAR StartDate = DATE([mYear], 1, 1)
RETURN
CALCULATE(
    SUM('销售表'[销售额]),
    '销售表'[日期] >= StartDate && '销售表'[日期] <= EndDate
)

如果你需要的是到当前日期的自然年初至今,无需辅助度量,直接用DAX内置函数即可:

Sales_YTD = CALCULATE(SUM('销售表'[销售额]), DATESYTD('销售表'[日期]))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 08:20:26