我试图按照帐号将T_DATE过去14天的VAL列中的值相加。
我的表达是
if([RND_FLG]=1 ,Sum([VAL]) over (Intersect([T_ACC],LastPeriods(14,[T_DATE]))),null)
9/10结果是准确的,但情况并非总是如此。
感谢任何帮助。
以下示例数据:
ALLDATE T_ACC VAL 14DAYVAL
12/13/2016 1501313137 500000 500000
12/15/2016 1501313137 800000 1300000
12/19/2016 1501313137 500000 1800000
12/20/2016 1501313137 500000 2300000
12/21/2016 1501313137 500000 2300000
12/22/2016 1501313137 500000 3300000
12/30/2016 1501313137 200000 3500000
答案 0 :(得分:1)
如果您的日期有差距,则可能会得到错误的结果。 LastPeriods()
与n天相同,因此它汇总了n行数与天数。您可以将数据标准化为每个日期有1行来解决此问题。
答案 1 :(得分:0)
尝试添加诸如Rank([T_DATE],[T_ACC])之类的排名列,然后可以使用over相交和上期求和