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 of the aggregate function |
aggtransfn |
regproc |
|
Transition function |
aggfinalfn |
regproc |
|
Final function (zero if none) |
aggsortop |
oid |
|
Associated sort operator (zero if none) |
aggtranstype |
oid |
|
Data 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 this field is null, the transition state value starts out null. |
New aggregate functions are registered with the CREATE
AGGREGATE command. See Section 32.10, “User-Defined Aggregates” for more
information about writing aggregate functions and the meaning of
the transition functions, etc.