【发布时间】:2018-07-07 01:44:36
【问题描述】:
我想计算最近 X 分钟内出现的不同目录号的数量。这通常称为滚动时间窗口。
例如,如果我有:
row startime orderNumber catalogNumb
1 2007-09-24-15.50 o1 21
2 2007-09-24-15.51 o2 21
3 2007-09-24-15.52 o2 21
4 2007-09-24-15.53 o3 21
5 2007-09-24-15.54 o4 22
6 2007-09-24-15.55 o4 23
7 2007-09-24-15.56 o4 21
8 2007-09-24-15.57 o4 21
例如,如果我想在最后 5 分钟内得到这个(5 只是可能的值之一),输出应该是:
row startime orderNumber catalogNumb countCatalog
1 2007-09-24-15.50 o1 21 1
2 2007-09-24-15.51 o2 22 2
3 2007-09-24-15.52 o2 23 3
4 2007-09-24-15.53 o3 24 4
5 2007-09-24-15.54 o4 21 4
6 2007-09-24-15.55 o4 21 4
7 2007-09-24-15.56 o4 21 4
8 2007-09-24-15.57 o4 21 3
我正在将 Big SQL 用于 infosphere BigInsights v3.0。 结果查询可以使用任何 db2 Olap windows 函数,除了 count (distinct catalogNumb) OVER()... 我的 db2 版本不支持。
除了count,我可能还需要对catalogNumb 和其他属性使用其他聚合函数(avg、sum...)。
如有任何反馈,我们将不胜感激。
【问题讨论】:
-
提供有关您的 Db2 版本和平台的信息
-
@data_henrik 我使用 Db2 11 和 RapidMiner 8 作为 IDE
-
@data_henrik 抱歉,我实际上是在将 Big SQL 用于 infosphere BigInsights v3.0
标签: sql count db2 sliding-window