我尝试从存储过程中返回几个值,而不使用Netezza中的reftable。
CREATE OR REPLACE PROCEDURE TMP_GETTABLEINFO(CHAR(any), VARCHAR(any), VARCHAR(any)) returns char(1), varchar(30) EXECUTE AS OWNER LANGUAGE NZPLSQL AS begin_proc DECLARE a ALIAS FOR $1; b ALIAS FOR $2; BEGIN ... RETURN a, b; END;
有可能吗?多么?
我的结果是:ERROR [HY000] ERROR: Must specify LANGUAGE
发布于 2018-11-01 10:56:13
我觉得这不可能。我还没有见过有多个值被返回的案例。
文档(Netezza_stored_procedures_guide.pdf):通常,NZPLSQL过程返回唯一的返回值,但它也可以以指定表的形式返回结果集。
若要创建返回结果集的存储过程,请执行以下操作:
RETURNS REFTABLE (<table-name>)的存储过程,以指示它返回一个与指定表类似的结果集。REFTABLENAME来引用结果表。https://stackoverflow.com/questions/52945040
复制相似问题