pg_aggregateには集約関数の情報が格納されています。 集約関数とは、いくつかの値(大方、問い合わせ条件に該当する各行のカラム)に ある操作を行い、その操作で得た1つの値を返します。集約関数の代表的なものは sumやcount、 maxなどです。
Table 3-2. pg_aggregate カラム
名前 | 型 | 照合 | 説明 |
---|---|---|---|
aggname | name | 集約関数名 | |
aggowner | int4 | pg_shadow.usesysid | 集約関数のオーナー(作成者) |
aggtransfn | regproc (function) | 変遷関数 | |
aggfinalfn | regproc (function) | 最終関数 | |
aggbasetype | oid | pg_type.oid | SQL文から呼ばれたときにこの関数が実行される型 |
aggtranstype | oid | pg_type.oid | 集約関数の内部変遷(状態)データの型 |
aggfinaltype | oid | pg_type.oid | 結果の型 |
agginitval | text | 変遷状態の初期値。これはaggtranstypeへ引き渡すためのテキストフィールドです。 |
新しい集約関数はCREATE AGGREGATE コマンドを使って 登録されます。 集約関数を著述するための詳細や、変遷関数の詳細などはProgrammer's Guide をご覧下さい。
集約関数は名前と引数によって識別されます。したがって、 aggname と aggnameが混成プライマリーキーとなります。