在DAX中,我想获得前一分钟的价值。
我知道PARALLELPERIOD函数可以在日期和年份执行此操作,但不允许在一分钟内完成此操作。
我可以通过以下方式编写简单的方法:
[DateTime] = [DateTime] - (1/24/60)
我是DAX的新手,因此不确定如何在我的过滤条件中对两个" DateTime"进行别名(一个用于计算函数的范围,另一个用于到原始查询中的行)
我知道EARLIER ()
功能,但我不明白如何定义订单,作为我的时间列。
修改
我的衡量标准如下:
Total:= SUM('Table'[CountColumn])
我已经开始写一个措施来尝试前一分钟:
PreviousMinuteTotal:= CALCULATE (
SUM ( 'Table'[CountColumn] ),
'Table'[DateTime]
= 'Table'[DateTime] - ( 1 / 24 / 60 ) )
显然这是一个矛盾,因为日期本身不能与前一个值相等,所以我试图弄清楚如何在计算中添加一个过滤器,以便回溯一分钟。
答案 0 :(得分:0)
尝试这样的事情:
PreviousMinuteTotal =
VAR PreviousMinute = MAX('Table'[DateTime]) - TIME(0,1,0)
RETURN CALCULATE(SUM('Table'[CountColumn]), 'Table'[DateTime] = PreviousMinute)
我有一点麻烦(由于四舍五入?)使用这个,所以你可能需要尝试使用它来代替返回线。 (我添加了第二个摆动空间。)
RETURN CALCULATE(SUM('Table'[CountColumn]),
'Table'[DateTime] > PreviousMinute - TIME(0,0,1),
'Table'[DateTime] < PreviousMinute + TIME(0,0,1))