收集

✅ Azure 流分析 ✅ 构造事件流

返回一个数组,其中包含窗口中的所有记录值。

语法

-- Aggregate Function Syntax
Collect ( [ <scalar_expression> ] )

-- Analytic Function Syntax
Collect ( [ <scalar_expression> ] ) OVER ([<PARTITION BY clause>] <LIMIT DURATION clause> [<WHEN clause>])

论据

Collect 采用可选的标量表达式,用于指定对所收集事件的投影。 如果没有参数,将收集完整的事件记录。

返回类型

参数 <scalar_expression> 投影的值数组,如果未提供任何参数,则为记录值数组。

一般备注

保证返回数组中的值的排序

例子

收集 10 秒窗口中的所有输入事件。

SELECT Collect() AS allEvents 
FROM Input 
GROUP BY Tumbling(second, 10) 

收集 10 秒窗口中输入事件的和字段的总和ab

SELECT Collect(a + b) AS allab 
FROM Input 
GROUP BY Tumbling(second,10)