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 43-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) |
aggsortop | oid | pg_operator.oid | Associated sort operator (zero if none) |
aggtranstype | oid | pg_type.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 33.10 for more information about
writing aggregate functions and the meaning of the transition
functions, etc.