代码之家  ›  专栏  ›  技术社区  ›  Sauron J.Vassallo

需要默认为最后一个非空值

  •  0
  • Sauron J.Vassallo  · 技术社区  · 6 年前

    目前,dax计算是一个简单的求和,但我需要默认为GrandTotal的最后一个非空值:

    例如,与其说167,不如说9:

    enter image description here

    1 回复  |  直到 6 年前
        1
  •  1
  •   Alexis Olson    6 年前

    与您提出的其他问题类似,您可以使用 HASONEVALUE 改变总计的行为。如果要求和的列命名为 Table1[Value] 然后,您想要的度量将如下所示:

    LastNonBlankValue = 
        VAR LastNonBlankDate = CALCULATE(MAX(DimDate[Date]), Table1[Value] > 0)
        RETURN IF(HASONEVALUE(DimDate[Date],
                   SUM(Table1[Value]),
                   CALCULATE(SUM(Table1[Value]),
                             ALLSELCTED(DimDate[Date]),
                             DimDate[Date] = LastNonBlankDate))
    

    这是为了找到最后一个非空白日期,并将该日期的总和作为总计。

    由于我不知道您的表和列名或上下文,您需要修改它以适应您的特定情况,但它应该会让您知道应该尝试什么。