43.2. pg_aggregate

pg_aggregate 存儲與聚集函數有關的信息。 聚集函數是對一個數值集(通常每個匹配查詢條件的行中的一個字段) 進行操作的函數,它返回從這些值中計算出的一個數值。 典型的聚集函數是 sumcount,和 maxpg_aggregate 裡的每條記錄都是一條 pg_proc 裡面的記錄的擴展。 pg_proc 記錄運載該聚集的名字,輸入和輸出 數據類型,以及其它一些和普通函數類似的信息。

Table 43-2. pg_aggregate 字段

名字類型引用描述
aggfnoidregprocpg_proc.oid此聚集函數的pg_procOID
aggtransfnregprocpg_proc.oid轉換函數
aggfinalfnregprocpg_proc.oid終處理函數(如果沒有則為零)
aggtranstypeoidpg_type.oid此聚集函數的內部轉換(狀態)數據的類型
agginitvaltext  轉換狀態的初始值。這是一個文本數據域, 它包含初始值的外部字串表現形式。如果數據域是 NULL, 那麼轉換狀態值從 NULL 開始。

新聚集函數是用 CREATE AGGREGATE 命令注冊的。 參閱 Section 33.9 獲取關于寫聚集函數 以及轉換函數的含義等的更多信息。