在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属性,它在性能方面意味着什么?
答案 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的维基:
在计算机编程中,可变函数是函数 不定的,即接受可变数量的 参数。对可变函数的支持差别很大 编程语言。