PostgreSQL 8.0.0rc2 Documentation
Prev | Fast Backward | Chapter 42. System Catalogs | Fast Forward | Next

# 42.2. `pg_aggregate`

The catalog `pg_aggregate` stores information about aggregate functions. An aggregate function is a function that operates on a set of values (typically one column from each row that matches a query condition) and returns a single value computed from all these values. Typical aggregate functions are `sum`, `count`, and `max`. Each entry in `pg_aggregate` is an extension of an entry in `pg_proc`. The `pg_proc` entry carries the aggregate's name, input and output data types, and other information that is similar to ordinary functions.

Table 42-2. `pg_aggregate` Columns

Name | Type | References | Description
--- | --- | --- | ---
`aggfnoid` | `regproc` | ``pg_proc`.oid` | `pg_proc` OID of the aggregate function
`aggtransfn` | `regproc` | ``pg_proc`.oid` | Transition function
`aggfinalfn` | `regproc` | ``pg_proc`.oid` | Final function (zero if none)
`aggtranstype` | `oid` | ``pg_type`.oid` | The type of the aggregate function's internal transition (state) data
`agginitval` | `text` |  | The initial value of the transition state. This is a text field containing the initial value in its external string representation. If the value is null, the transition state value starts out null.

New aggregate functions are registered with the `CREATE AGGREGATE` command. See Section 32.10 for more information about writing aggregate functions and the meaning of the transition functions, etc.

Prev | Home | Next
System Catalogs | Up | `pg_am`