powerbi - 前 n 天中每一天的销售额总和的 DAX 公式
问题描述
给定Power BI 中包含三列Date、Category和Sales的FACT表,我正在寻找一个 DAX 函数,该函数每天返回其前n天的销售额总和。
假设n = 2,这意味着对于 2020 年 1 月 4 日,我的度量应该返回 2020 年 1 月 2 日和 2020 年 1 月 3 日的销售额总和。这是一个小例子:
Date Category Sales
01/01/2020 A 1
01/01/2020 B 3
01/02/2020 B 2
01/03/2020 B 1
01/04/2020 A 0
01/05/2020 B 10
01/06/2020 B 7
我想要的是
Date MyMeasure
01/01/2020 0
01/02/2020 4
01/03/2020 6
01/04/2020 3
01/05/2020 1
01/06/2020 10
然后我想使用类别作为过滤器,在我的例子中n是 365。
我尝试了以下
MyMeasure =
VAR FROM_DATE =
DATEADD ( FACT[DATE], 0, DAY )
VAR SALES_365 =
CALCULATE (
SUM ( FACT[SALES] ),
DATESINPERIOD ( FACT[DATE], FROM_DATE, 365, DAY )
)
RETURN
SALES_365
但得到一个错误,即在需要单个值的地方提供了一个包含多个值的表。
解决方案
错误出现在变量 FROM_DATE 中,其中 DATEADDD 返回一列日期而不是单个值。那就是说你真的不需要一个变量,你可以使用一个简单的减法和DATESBETWEEN(DateCol, DateFrom,DateTo)
MyMeasure =
CALCULATE (
SUM ( FACT[SALES] ),
DATESBETWEEN('FACT'[DATE],MAX(FACT[DATE])-2,MAX(FACT[DATE])-1)
)
推荐阅读
- python - 登录到抓取 - 获取真实性令牌但生成的 html 用于登录页面而不是目标页面 - 我做错了什么?
- transformation - 如何创建交叉表以填充在 SQL ORACLE 中创建的新列的值
- jquery - 使用添加按钮动态创建由下拉列表、文本框等组成的无限部分
- javascript - 尝试构建一个自动建议功能,该功能将接受或解析多个值,并且只接受以特定字符开头的值
- function - 如何检查 Azure Function 是否仍在运行
- javascript-objects - 如何在 hyperHTML 中呈现对象
- android - Android Studio Native .SO 库和 ARM 虚拟化问题
- three.js - 如何缩放网格以使外部部分不会使用变形目标变形?
- c# - 无法将 JSON 对象反序列化为列表
- go - 如何使用 Go 1.12 运行本地 GAE 模拟器?