pg_aggregate #
目录pg_aggregate存储关于聚合函数的信息。
聚合函数是对一个数值集合(典型的是每个匹配查询条件的行中的同一个列的值)进行操作的函数,它返回从这些值中计算出的一个数值。
典型的聚合函数是 sum、count和max。
pg_aggregate里的每个项都是一个pg_proc项的扩展。
pg_proc项记载该聚合的名字、输入和输出数据类型,以及其他一些和普通函数类似的信息。
表 52.2. pg_aggregate 列
列类型 描述 |
|---|
聚合函数的 |
聚合类型:
|
一个有序集或者假想集聚合的直接(非聚合)参数的数量,一个可变数组算作一个参数。
如果等于 |
转换函数 |
最终函数(如果没有则为零) |
结合函数(如果没有则为零) |
序列化函数(如果没有则为零) |
反序列化函数(如果没有则为零) |
用于移动聚合模式的向前转移函数(如果没有则为零) |
用于移动聚合模式的反向转移函数(如果没有则为零) |
用于移动聚合模式的最终函数(如果没有则为零) |
True 将额外的虚拟参数传递给 |
True 将额外的虚拟参数传递给 |
|
和 |
相关联的排序操作符(如果没有则为0) |
聚合函数的内部过渡(状态)数据的数据类型 |
过渡状态数据的近似平均大小(字节),或者为零表示使用默认估算值 |
聚合函数用于移动聚合模式的内部过渡(状态)数据的数据类型(如果没有则为零) |
移动聚合模式的过渡状态数据的近似平均大小(字节),或者为零表示使用默认估算值 |
过渡状态的初始值。这是一个文本字段,包含初始值的外部字符串表现形式。如果该字段为空,则过渡状态值从空值开始。 |
用于移动聚合模式的转移状态初值。这是一个文本字段,它包含了以其外部字符串表示形式表达的初值。 如果这个字段为空,则转移状态值从空值开始。 |
新的聚集函数可通过CREATE AGGREGATE命令注册。
更多关于编写聚集函数以及转移函数的含义等信息请参见第 36.12 节。