你可以返回一个游标,然后进行处理。CREATE FUNCTION reffunc2() RETURNS refcursor AS ' DECLARE ref refcursor; BEGIN OPEN ref FOR SELECT col FROM test; RETURN ref; END; ' LANGUAGE plpgsql;BEGIN; SELECT reffunc2(); reffunc2 -------------------- <unnamed cursor 1> (1 row)FETCH ALL IN "<unnamed cursor 1>"; COMMIT;
a$b$c然后在处理
DECLARE
ref refcursor;
BEGIN
OPEN ref FOR SELECT col FROM test;
RETURN ref;
END;
' LANGUAGE plpgsql;BEGIN;
SELECT reffunc2(); reffunc2
--------------------
<unnamed cursor 1>
(1 row)FETCH ALL IN "<unnamed cursor 1>";
COMMIT;