PostgreSQL 提供四种类型的函数:
查询语言函数(用 SQL 写的函数) (Section 33.4)
过程语言函数(用诸如 PL/Tcl 或 PL/pgSQL 这样的语言写的函数) (Section 33.5)
内部函数(Section 33.6)
C 语言函数(Section 33.7)
每种函数都可以以一个基本类型或,复合类型或是两者的某种组合作为参数。 另外,每种函数都可以返回一个基本类型或一个复合类型值。
许都类型的函数可以接受或者返回某种类型的伪类型(比如多态类型), 但是可用的东西是变化的。参考每种类型的函数的描述获取更多细节。
定义 SQL 函数更容易些,所以我们将从这里开始。 大多数用于 SQL 函数的概念将和其它类型的函数一致。
综观全章,如果你阅读一下 CREATE FUNCTION 的手册页应该会对你理解本章的例子很有帮助。 本章的例子还可以在PostgreSQL 源代码发布的 src/tutorial 目录里的 funcs.sql 和 funcs.c 里找到。