pg_aggregate
pg_aggregate存储关于聚集函数的信息。聚集函数是对一个值集合(通常是来自于匹配某个查询条件的每个行的一个列值)进行操作并且返回从这些值计算出的一个值的函数。
典型的聚集函数是sum、count和max。
pg_aggregate里的每个项都是一个
pg_proc项的扩展。pg_proc的项记载该聚集的名字、输入输出的数据类型以及其他和普通函数类似的信息。
表 1. pg_catalog.pg_aggregate
| 列 | 类型 | 引用 | 描述 |
|---|---|---|---|
aggfnoid |
regproc | pg_proc.oid | 聚集函数的OID |
aggtransfn |
regproc | pg_proc.oid | 转移函数的OID |
aggprelimfn |
regproc | 预备函数的OID(如果没有就为0) | |
aggfinalfn |
regproc | pg_proc.oid | 最终函数的OID(如果没有就为0) |
agginitval |
text | 转移状态的初始值。这是一个文本域,它包含初始值的外部字符串表现形式。 如果这个域为NULL,则转移状态从NULL开始 | |
agginvtransfn |
regproc | pg_proc.oid | aggtransfn的反函数在pg_proc中的OID |
agginvprelimfn |
regproc | pg_proc.oid | aggprelimfn的反函数在pg_proc中的OID |
aggordered |
Boolean | 如果为true,则聚集定义为 ORDERED。 |
|
aggsortop |
oid | pg_operator.oid | 相关的排序操作符的OID(如果没有则为零) |
aggtranstype |
oid | pg_type.oid | 聚集函数的内部转移(状态)数据的数据类型 |
上级主题: 系统目录定义