9.3 9.4 9.5 9.6 10 11 12
阿里云PostgreSQL 问题报告 纠错本页面

48.2. pg_aggregate

存储与聚合函数有关的信息。聚合函数是对一个数值集(通常每个匹配查询条件的行中的一个字段) 进行操作的函数,它返回从这些值中计算出的一个数值。典型的聚合函数是sum, count, maxpg_aggregate 里的每条记录都是一条pg_proc里面的记录的扩展。pg_proc 记录承载该聚合的名字、输入和输出数据类型,以及其它一些和普通函数类似的信息。

表 48-2. pg_aggregate 字段

名字类型引用描述
aggfnoidregprocpg_proc.oid此聚合函数的pg_proc OID
aggkindchar 聚合类型: n"普通"聚合 o"顺序集"聚合或 h"假想集"聚合
aggnumdirectargsint2  顺序集或假想集聚合的直接(非聚合)参数的数量,将可变数组看做一个参数。 如果等于pronargs,那么该聚合必须是可变的, 并且可变数组描述聚合的参数和最终直接参数。对普通聚合来说总是零。
aggtransfnregprocpg_proc.oid转换函数
aggfinalfnregprocpg_proc.oid最终处理函数(如果没有则为零)
aggmtransfnregprocpg_proc.oidmoving-aggregate模式下的正向转换函数(如果没有则为零)
aggminvtransfnregprocpg_proc.oidmoving-aggregate模式下的反向转换函数(如果没有则为零)
aggmfinalfnregprocpg_proc.oidmoving-aggregate模式下的最终函数(如果没有则为零)
aggfinalextrabool 传递额外的假变量到aggfinalfn为真
aggmfinalextrabool 传递额外的假变量到aggmfinalfn为真
aggsortopoidpg_operator.oid关联排序操作符(如果没有则为零)
aggtranstypeoidpg_type.oid此聚合函数的内部转换(状态)数据的数据类型
aggtransspaceint4  转换状态数据的大约平均大小(以字节计),或者使用缺省估计时为零
aggmtranstypeoidpg_type.oid moving-aggregate模式下,聚合函数的内部转换(状态)数据的数据类型 (如果没有则为零)
aggmtransspaceint4  moving-aggregate模式下转换状态数据的大约平均大小(以字节计), 或者使用缺省估计时为零
agginitvaltext  转换状态的初始值。这是一个文本数据域,它包含初始值的外部字符串表现形式。 如果数据域是 null ,那么转换状态值从 null 开始。
aggminitvaltext  moving-aggregate模式下转换状态的初始值。 这是一个包含以它的外部字符串表示的初始值的文本字段。 如果这个字段为空,那么转换状态值以空开始。

新聚合函数是用CREATE AGGREGATE命令注册的。参阅第 35.10 节 获取关于编写聚合函数以及转换函数的含义等的更多信息。

<
/BODY >