我正在使用JDeveloper编写中的Oracle事件处理项目。
我有一个20个元组的数据流,其形式是:
(attr1,attr2,attr3)
1,1,1
2,2,2
....
20,20,20我希望计算每个窗口中元组的数量(稍后我将添加一个条件,只计算不包含空值的元组)。期望的输出是:
10
10我试过:从流行10选择计数(*)。然而,我得到:
0
1
2
3
4
5
6
7
8
9
10我也尝试过:从流中选择计数(*)[行10行10]. 幻灯片]不过,我明白了:
0
10我的问题是,如何指定一个查询,该查询仅在所有N个元组到达时,才能返回大小为N的窗口中的元组总数(条件包含这些元组)?
谢谢。
发布于 2016-10-10 16:47:58
第二个查询应该是可以的,但是您必须添加一个when子句,以便只有在计数为10时才有输出。
<query id="ExampleQuery"><![CDATA[
select count(*) as total from inputChannel [rows 10 slide 10]
having count(*) = 10
]]></query>

希望这能帮上忙。
https://stackoverflow.com/questions/38841010
复制相似问题