PostgreSQL は4種類の関数を提供します。
問い合わせ言語関数 SQLで書かれた関数)
手続型言語関数 PL/TclやPL/pgSQLなどで書かれた関数)
内部関数
C 言語関数
すべての関数は、基本型、複合型、または変数(引数)の組み合せを受け付けることが可能です。また、すべての関数は基本型、または複合型を返すことが可能です。SQL関数の定義の方法は簡単ですので、そちらから説明します。この章の例はチュートリアルディレクトリの funcs.sqlとfuncs.cでも参照することができます。
この章を全体に関して、その例をより理解するために、CREATE FUNCTION コマンドのリファレンスページを一読することが有用です。