Postgresql 中文操作指南
53.2. pg_aggregate #
目录 pg_aggregate 存储有关聚合函数的信息。聚合函数是在一组值(通常是与查询条件相匹配的每行的一列)上操作的函数,并返回从所有这些值计算出的单个值。典型的聚合函数是 sum 、 count 和 max 。 pg_aggregate 中的每个条目都是 pg_proc 中某个条目的扩展。 pg_proc 条目承载聚合的名称、输入和输出数据类型,以及与普通函数类似的其他信息。
Table 53.2. pg_aggregate Columns
Column Type Description |
aggfnoid regproc (引用 pg_proc . oid ) pg_proc 聚合函数的 OID |
aggkind char 聚合类型: n 表示“普通”聚合, o 表示“有序集”聚合, h 表示“假设集”聚合 |
aggnumdirectargs int2 有序集或假设集聚合的直接(非聚合)参数数目,将可变数组计为一个参数。如果等于 pronargs ,则聚合必须为可变的,而可变数组描述了聚合参数和最终直接参数。对于普通聚合始终为零。 |
aggtransfn regproc (引用 pg_proc . oid )转换函数 |
aggfinalfn regproc (引用 pg_proc . oid )最终函数(如果没有则为零) |
aggcombinefn regproc (引用 pg_proc . oid )组合函数(如果没有则为零) |
aggserialfn regproc (引用 pg_proc . oid )序列化函数(如果没有则为零) |
aggdeserialfn regproc (引用 pg_proc . oid )反序列化函数(如果没有则为零) |
aggmtransfn regproc (引用 pg_proc . oid )用于移动聚合模式的前向转换函数(如果没有则为零) |
aggminvtransfn regproc (参考 pg_proc . oid )移动聚合模式的逆转换函数(如果无则为零) |
aggmfinalfn regproc (参考 pg_proc . oid )移动聚合模式的最终函数(如果无则为零) |
aggfinalextra bool true 表示将额外的哑参数传递给 aggfinalfn |
aggmfinalextra bool true 表示将额外的哑参数传递给 aggmfinalfn |
aggfinalmodify char aggfinalfn 是否修改过渡状态值: r 如果它是只读的, s 如果在 aggfinalfn 后无法应用 aggtransfn ,或者 w 如果它在该值上写入信息 |
aggmfinalmodify char 类似于 aggfinalmodify ,但适用于 aggmfinalfn |
aggsortop oid (参考 pg_operator . oid )关联的排序运算符(如果无则为零) |
aggtranstype oid (参考 pg_type . oid )聚合函数内部过渡(状态)数据的数据类型 |
aggtransspace int4 过渡状态数据的近似平均大小(以字节为单位),或零以使用默认估计值 |
aggmtranstype oid (参考 pg_type . oid )移动聚合模式下聚合函数内部过渡(状态)数据的数据类型(如果无则为零) |
aggmtransspace int4 移动聚合模式下过渡状态数据的近似平均大小(以字节为单位),或零以使用默认估计值 |
agginitval text 过渡状态的初始值。这是一个文本字段,包含以外部字符串表示形式显示的初始值。如果此字段为空,过渡状态值以空开始。 |
aggminitval text 移动聚合模式下过渡状态的初始值。这是一个文本字段,包含以外部字符串表示形式显示的初始值。如果此字段为空,过渡状态值以空开始。 |
使用 CREATE AGGREGATE 命令注册新聚合函数。有关编写聚合函数、过渡函数含义等的更多信息,请参阅 Section 38.12 。