transform is a function specifying how to convert a native SQL data type to a
procedural language's native variable type.
By default, any SQL data type passed to a procedural language is converted that language's text representation, however particularly with more complex data types such as
JSON it's often desirable to convert it to a more appropriate representation such as an associative array, hash, dictionary, llst etc..
Transform functionality was added in PostgreSQL 9.5.
Transforms are created using
CREATE TRANSFORM, which creates a corresponding entry in the
pg_transform system catalogue table. and
Normally transform creation will be handled by an
extension providing transforms for a particular
Extensions providing transforms
bool_plperl(PostgreSQL 14 and later)
hstore_plperl(PostgreSQL 9.5 and later)
hstore_plpython(PostgreSQL 9.5 and later)
jsonb_plperl(PostgreSQL 11 and later)
jsonb_plpython(PostgreSQL 11 and later)
ltree_plpython(PostgreSQL 9.5 and later)