47.2. pg_aggregate

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

Table 47-2. pg_aggregate 字段

名字 类型 引用 描述
aggfnoid regproc pg_proc.oid 此聚集函数的pg_proc OID
aggtransfn regproc pg_proc.oid 转换函数
aggfinalfn regproc pg_proc.oid 最终处理函数(如果没有则为零)
aggsortop oid pg_operator.oid 关联排序操作符(如果没有则为零)
aggtranstype oid pg_type.oid 此聚集函数的内部转换(状态)数据的数据类型
agginitval text 转换状态的初始值。这是一个文本数据域,它包含初始值的外部字符串表现形式。 如果数据域是 null ,那么转换状态值从 null 开始。

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