pg_aggregate

pg_aggregate

pg_aggregate存储关于聚集函数的信息。 聚集函数是对一个值集合(通常是来自于匹配某个查询条件的每个行的一个列值)进行操作并且返回从这些值计算出的一个值的函数。 典型的聚集函数是sumcountmaxpg_aggregate里的每个项都是一个pg_proc项的扩展。 pg_proc的项记载该聚集的名字、输入输出的数据类型以及其他和普通函数类似的信息。

Table 1. pg_catalog.pg_aggregate
类型 参考 描述
aggfnoid regproc pg_proc.oid 聚集函数的OID
aggtransfn regproc pg_proc.oid 转移函数的OID
aggcombinefn regproc   预备函数的OID(如果没有就为0)
aggfinalfn regproc pg_proc.oid 最终函数的OID(如果没有就为0)
agginitval text   转移状态的初始值。 这是一个文本域,它包含初始值的外部字符串表现形式。 如果这个域为NULL,则转移状态从NULL开始
aggordered Boolean   如果为true,则聚集定义为ORDERED
aggsortop oid pg_operator.oid 相关的排序操作符的OID(如果没有则为零)
aggtranstype oid pg_type.oid 聚集函数的内部转移(状态)数据的数据类型
aggtransspace int4 pg_type.int4 估计的状态数据大小(默认估计为0)