使用over函数的Spotfire计算列

时间:2019-04-28 13:47:22

标签: spotfire data-transform

我想创建一个计算列“ indicateur”,该列可跟踪布尔值 当我拥有True时,我将指标增加1,但是我希望错误的行具有最后一个true指标的值。

当我传递到新ID时,增量从零开始。

我已经使用over函数尝试了一些Spotfire表达式,但未获得正确的结果

case  
when [boolean] then sum(If([boolean],1,0)) over (Intersect([ID],AllPrevious([ID])))
else 0
end

enter image description here

1 个答案:

答案 0 :(得分:2)

您在这里遇到了几个问题。您的case语句正在对数据进行子设置...它将仅在布尔值为true时才计算总和。

主要问题是over语句。这样的事情应该给出正确的答案

sum(If([boolean],1,0)) over (Intersect([ID],AllPrevious([Timestamp])))