首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VARIADIC参数必须是最后一个输入参数

VARIADIC参数必须是最后一个输入参数
EN

Stack Overflow用户
提问于 2013-10-09 14:42:10
回答 2查看 1.3K关注 0票数 3

如何创建两个VARIADIC参数。看我的代码并纠正我。

代码语言:javascript
复制
CREATE OR REPLACE FUNCTION ip_source_test(text,text,date,date,VARIADIC int[],VARIADIC text[])
RETURNS TABLE (no_documents int, "Report By" text, "Report_By" text) AS 
$$
BEGIN
IF 'Source Member' = $1 THEN
RETURN QUERY SELECT.....
ELSEIF 'company' = $1 THEN
RETURN QUERY SELECT.....
ELSE
RAISE NOTICE 'Not Worked';
END IF;
RETURN;
END;
$$ LANGUAGE plpgsql;

Error: VARIADIC parameter must be the last input parameter.

在SQL代码im中,应该使用6个参数。请用示例代码更新我。

EN

回答 2

Stack Overflow用户

发布于 2013-10-09 15:32:20

每个函数只能有一个VARIADIC,因为变量包含调用方传递的其他参数all

如果您的意思是调用方使用数组,那么无论如何使用variadic是没有意义的,函数签名可能如下所示:

代码语言:javascript
复制
CREATE FUNCTION ip_source_test(text,text,date,date,int[], text[])
票数 1
EN

Stack Overflow用户

发布于 2013-10-09 15:38:47

错误消息告诉您:

VARIADIC参数必须是最后一个输入参数。

从逻辑上讲,一个函数只能接受一个VARIADIC 单一参数。在该参数之前可以有其他(非VARIADIC)参数。手册:

实际上,所有位于或超过VARIADIC位置的实际参数都被收集到一个一维数组中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19275206

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档