> PostgreSQL9.6 中文手册 > 用户定义的函数

36.3. 用户定义的函数

PostgreSQL提供四种函数:

  • 查询语言函数(用SQL编写的函数)(第 36.4 节)

  • 过程语言函数(例如,用PL/pgSQLPL/Tcl编写的函数)(第 36.7 节)

  • 内部函数(第 36.8 节)

  • C 语言函数(第 36.9 节)

每一类函数可以采用基本类型、组合类型或者它们的组合作为参数。此外,每一类函数可以返回一个基本类型或一个组合类型。函数也能被定义成返回基本类型或组合类型值的集合。

很多类函数可以接受或者返回特定的伪类型(例如,多态类型),但是可用的功能会变化。详情可以参考每一种函数的描述。

定义SQL函数最容易,因此我们将从讨论SQL函数开始。大部分SQL函数的概念也能用到其他类型的函数上。

在这一章中,查看CREATE FUNCTION命令的参考页有助于更好地理解例子。这章中的一些例子可以在PostgreSQL源代码发布的src/tutorial目录中的funcs.sqlfuncs.c中找到。