收集 (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 秒的时段内收集输入事件的 和 b 字段的总和a

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