我有一个循环表并处理返回值的函数。我正在返回SETOF VARCHAR[]
并返回RETURN NEXT the_varchar_array
并且工作正常。
但现在我需要在INTEGER
之前返回一些VARCHAR[]
。
如何定义返回值以返回INTEGER
值和VARCHAR[]
以及如何在函数内返回它们?
如果定义为RETURNS SETOF INTEGER, INTEGER, INTERGER, VARCHAR[]
,则无效。
如果我使用RETURNS TABLE(a INTEGER, b INTEGER, c INTEGER, d VARCHAR[])
,可以使用,但我不知道如何返回函数内的每个值。
RETURN NEXT a,b,c,d
不起作用。只有RETURN NEXT
会返回一个空行。
答案 0 :(得分:2)
This development documentation显示了从函数返回值的不同方法。您可能需要查看复合返回类型或包含所有值的一行数据。
注意 - 评论根据OP的请求转换为答案
答案 1 :(得分:1)
尝试:
RETURNS SETOF record
这应该允许您返回任何您想要的信息。