PostgreSQL function returning multiple result sets

前端 未结 4 860
借酒劲吻你
借酒劲吻你 2020-11-27 19:08

Is it possible to return multiple result sets from a Postgres function, like in MSSQL:

CREATE PROCEDURE test

AS

SELECT * FROM first_table

SELECT * FROM se         


        
4条回答
  •  隐瞒了意图╮
    2020-11-27 20:01

    CREATE OR REPLACE FUNCTION "pr_GetCustomersAndOrders"()
    RETURNS SETOF refcursor AS
    $BODY$DECLARE
    customerRC refcursor;
    orderRC refcursor;
    BEGIN
    open customerRC FOR
    SELECT * FROM customers;
    RETURN NEXT customerRC;
    
    open orderRC FOR
    SELECT * FROM orders;
    RETURN NEXT orderRC;
    RETURN;
    END;$BODY$
    LANGUAGE 'plpgsql' VOLATILE;
    ALTER FUNCTION "pr_GetCustomersAndOrders"() OWNER TO postgres;
    

    I.o.w. using refcursors :)

提交回复
热议问题