43.2. pg_aggregate

pg_aggregateカタログには集約関数の情報が格納されています。集約関数とは、値の集合(多くの場合は問い合わせ条件に該当する各行の1つの列)にある操作を行い、それら全ての値の演算の結果得られる単一の値を返します。集約関数の代表的なものはsumcount、そしてmaxです。pg_aggregate内の各エントリは、pg_proc内のエントリの拡張です。pg_procエントリには、集約の名前、入出力データ型、および通常の関数と類似したその他の情報が含まれます。

表 43-2. pg_aggregateの列

名前参照先説明
aggfnoidregprocpg_proc.oid集約関数のpg_proc OID
aggtransfnregprocpg_proc.oid遷移関数
aggfinalfnregprocpg_proc.oid最終関数(ない時は0)
aggsortopoidpg_operator.oid集約関数の内部遷移(状態)データの型
aggtranstypeoidpg_type.oid集約関数の内部遷移(状態)データのデータ型
agginitvaltext  遷移状態の初期値。外部文字列表現での初期値を含んだテキストフィールド。フィールドがNULL値の場合、推移状態はNULL値で始まります。

新しい集約関数はCREATE AGGREGATEコマンドで登録されます。 集約関数の書き方や遷移関数の説明などの詳細は項33.10を参照してください。