Extending the Database: SQL Functions
* SQL functions are group of SQL statements which return the last statement,
which should be a SELECT one.
* Example:
test=> CREATE FUNCTION name_len(employees)
test-> RETURNS int4
test-> AS
test-> 'SELECT
test'> CASE WHEN $1.last_name = null THEN 0 ELSE char_length($1.last_name) END
test'> + 1 +
test'> CASE WHEN $1.last_name = null THEN 0 ELSE char_length($1.last_name) END
test'> AS name_length'
test-> LANGUAGE 'sql' \g
CREATE
* Now you can use this function inside your queries:
test=> SELECT name_len(employees)
test-> FROM employees \g