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