A simple extension providing two aggregate functions,
aggregate functions, operating on any element type and returning the last or
the first value of the group.
Since by default the ordering inside groups created by a
GROUP BY expression
is not defined, it is advisable to use an
ORDER BY clause inside the
aggregate expression (see the aggregate function syntax).
This feature has been added in PostgreSQL 9.0.
This extension is intended to replace the corresponding first and last aggregates from the PostgreSQL wiki.