Bangalore BLR - Bagmane Tech Park 2013-10-11 Data Centre 0
Bangalore BLR - Bagmane Tech Park 2013-10-11 BMS 0
Bangalore BLR -Bagmane Tech Park 2013-10-12 BMS 0
Bangalore BLR - Bagmane Tech Park 2013-10-15 BMS 3
我有上述数据。如果最后一列为零,则应根据所有列进行排名。如果日期是连续的,如2013-10-11,2013-10-12排名应为1,2 ......如果日期有任何中断2013-10-11,2013-10-12和2013-10-15排名应该从2013-10-15的1开始
答案 0 :(得分:0)
我认为你将不得不在这里写一个自定义聚合,我不认为所涉及的工作将是微不足道的。然后,您需要在具有明确顺序的窗口函数上调用它。
我认为这可以通过将日期存储在数组中,然后处理数组中的最大值并对当前值执行整数数学来完成。当然,问题在于性能,所以你要么想编写一个函数来获取C中数组的最大日期(或者pl / perl?),然后在SQL中从那里处理它。
这个过程太复杂了,无法在这里为您提供工作样本。