我试图为每个客户找到他连续购买某种东西的最长年份。我试图创建一个计算字段,但无济于事。我创建了两个计算字段
-
连续:如果max([Count])>0则previous_value(0)+1+index()-index()否则为0 end
-
马克斯:window_max((连续))
我的数据看起来像:
Year | Customer | Count
1996 | a | 2
1996 | b | 1
1997 | a | 1
1997 | b | 2
1998 | b | 1
那么结果就是
: 2
b: 3
使用嵌套的表格计算。
第一个计算称为running_good_years,是销售连续年份的运行计数。
If count(Sales) = 0 then 0 else previous_value(0) + 1 end
第二个只返回最大值
Window_max(running_good_years)
对于表计算,定义分区和寻址是至关重要的。按客户、地址、年份划分