【问题标题】:DAX Command last 30 days data (relative)DAX 命令最近 30 天数据(相对)
【发布时间】:2020-03-02 21:34:34
【问题描述】:

我正在尝试从表中过滤数据,但我需要从实际日期算起的最近 30 天的相对时间。我可以通过以下方式获取我的全部数据:

Measure = CALCULATE(SUMX(SKzPoh; SKzPoh[PohPMJ x PohKc]);
SKzPoh[RelOP]=2)

谁能帮我获取过去 30 天的数据?


当然。我的桌子上有一个打印屏幕。够了还是需要更多规格?

文件为库存管理的.mdb文件,主要列有:

PohPMJ - 移动次数

PohKc - 运动值

DAX 中的 PohKc x PohPMJ 只是上面两个值的乘积

Datum - 数据库中行的创建日期

RelOP - 在 db 值 1 和 2 中(1 用于购买,2 用于出售)所以它是一个过滤器

谢谢

printscreen

【问题讨论】:

  • 你的表结构是什么?如果您提供一些示例数据和预期结果会有所帮助。
  • 你好,当然。我的桌子上有一个打印屏幕。够了还是需要更多规格?
  • 作为答案发布,我对这个门户网站很陌生,没有找到是否可以在评论中添加图片。

标签: powerbi dax days


【解决方案1】:

通常对于这种计算,您需要在计算中添加 DATEADD 作为表格过滤器。我创建了一个虚拟表来展示它是如何工作的

示例表:销售额

Sales = DATATABLE("Date",DATETIME,
                "Sales",INTEGER
                ,{
                            {"2019-01-01",10456},
                            {"2019-01-02",1950},
                            {"2019-01-03",54353},
                            {"2019-01-04",34535},
                            {"2019-01-05",35436},
                            {"2019-01-06",16234},
                            {"2019-01-07",26354}
                }                    
            )

假设表名为Sales,则相对于每个日期5天的计算为:

Sales L5 := CALCULATE(SUM(Sales[Sales]),DATEADD(Sales[Date],-5,DAY))

【讨论】:

  • 看起来像这样: CALCULATE(SUMX(SKzPoh; SKzPoh[PohPMJ x PohKc]); SKzPoh[RelOP]=2;DATESINPERIOD(SKzPoh[Datum]; UTCTODAY();-30;DAY))是对的。
猜你喜欢
  • 2017-07-18
  • 2021-07-30
  • 1970-01-01
  • 2020-08-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-13
  • 1970-01-01
相关资源
最近更新 更多