CREATE AGGREGATE average
WITH (
INIT = average_init,
ITER = average_iter,
COMBINE = average_combine,
FINAL = average_final
);
在查询中使用 average 聚集之前,必须使用 CREATE FUNCTION 语句来创建 CREATE AGGREGATE 语句中指定的支持函数。
下表给出了每个支持函数可能为 average 执行的任务的示例。
| 关键字 | 支持函数 | 作用 |
|---|---|---|
| INIT | average_init | 分配并初始化存储当前总和和当前行计数的扩展数据类型 |
| ITER | average_iter | 对于每行,将表达式的值添加到当前总和并将当前行计数加一 |
| COMBINE | average_combine | 将部分结果的当前总和和当前行计数添加到其它结果,并返回更新的结果 |
| FINAL | average_final | 返回当前总和与当前行计数的比率,并将此比率转换到结果类型 |