Oracle CQL - подсчет количества кортежей после завершения окна

Я работаю над проектом обработки событий Oracle в Oracle Stream Analytics, используя JDeveloper,

У меня есть поток данных из 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 кортежей?

Спасибо.

1 ответ

Ваш второй запрос должен быть в порядке, но вы должны добавить предложение, которое будет иметь результат, только когда count равен 10.

 <query id="ExampleQuery"><![CDATA[ 
    select count(*) as total from inputChannel  [rows 10 slide 10] 
    having count(*) = 10
  ]]></query>

надеюсь, это поможет

Другие вопросы по тегам