47.2. pg_aggregate

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

Table 47-2. pg_aggregate的列

名称类型引用描述
aggfnoidregprocpg_proc.oid聚集函数在pg_proc中的OID
aggtransfnregprocpg_proc.oid转移函数
aggfinalfnregprocpg_proc.oid最终函数(如果没有则为0)
aggsortopoidpg_operator.oid相关联的排序操作符(如果没有则为0)
aggtranstypeoidpg_type.oid聚集函数的内部转移(状态)数据的数据类型
agginitvaltext  转移状态的初始值。这是一个文本域,它包含初始值的外部字符串表现形式。如果这个域为空,则转移状态值从空值开始。

新的聚集函数可通过CREATE AGGREGATE命令注册。更多关于编写聚集函数以及转移函数的含义等信息请参见Section 35.10