什么是VARIADIC声明在postgreSQL中意味着什么?

时间:2015-11-19 11:25:36

标签: sql postgresql

在PostgreSQL 9.3.4发行说明中说:

Ensure that the planner sees equivalent VARIADIC and non-VARIADIC function calls as equivalent (Tom Lane)

我搜索了PostgreSQL手册,找不到它的定义。

我发现它与功能参数模式(IN,OUT,VARIADIC)有关,但我不明白这意味着什么?我什么时候想用它?如果函数具有VARIADIC属性,它在性能方面意味着什么?

2 个答案:

答案 0 :(得分:5)

变量函数是具有未定义数量的参数的函数,它们存在于许多编程和查询语言中。

对于PostgreSQL,您可以在http://www.postgresql.org/docs/9.1/static/xfunc-sql.html找到一个示例(35.4.5。带有可变参数的SQL函数):

  

有效地,VARIADIC或其以外的所有实际参数   位置被收集到一维数组中,就好像你有   写入

答案 1 :(得分:3)

如果您不确定参数的数量,那么我们使用Variadic。

您可以参考VARIADIC FUNCTIONS IN POSTGRESQL了解详情。

请参阅有关Variadic functions的维基:

  

在计算机编程中,可变函数是函数   不定的,即接受可变数量的   参数。对可变函数的支持差别很大   编程语言。