DAX - 最后一个值

10

我有这张表格

enter image description here

我想要创建一个度量来获取每天的最后交易价。例如:

enter image description here

DAX查询应该是什么样的呢?

3个回答

13

你需要创建两个度量值。一个用于每个日期的最后时间,另一个用于获取该日期和时间的值。

Last Time := 
CALCULATE(MAX([Time]),FILTER('Table',[Date]=MAX([Date])))

Last Traded Value =
    CALCULATE (
        MAX ( 'Table'[Traded Value] ),
        FILTER ( 'Table', [Date] = MAX ( [Date] ) && [Last Time] = [Time] )
    )

然后在一个数据透视表中的行中添加Date列,并将Last TimeLast Traded Value度量添加到值窗格中。

如果有帮助,请让我知道。


1

例如:

DEFINE
VAR TableTMP =
    ADDCOLUMNS ( 'Table', "DateTime", [Date] + [Time] )
EVALUATE
    SUMMARIZE (
      NATURALINNERJOIN (
        TableTMP,
        SUMMARIZE  (
          GROUPBY ( TableTMP, [Date], "DateTime", MAXX ( CURRENTGROUP (), [DateTime] ) ),
          [DateTime]
        )
      ),
      [Date],
      [Time],
      [Traded Value]
    )

0

通过 DAX 中的 新窗口函数,我认为这可以简化为

Last Traded Value =
CALCULATE (
    MAX ( 'Table'[Traded Value] ),
    INDEX (
        1,
        ORDERBY ( 'Table'[Time], DESC ),
        PARTITIONBY ( 'Table'[Date] )
    )
)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接