Re: JOIN results of refcursor functions - Mailing list pgsql-sql

From Alvaro Herrera
Subject Re: JOIN results of refcursor functions
Date
Msg-id 20081201020846.GB5632@alvh.no-ip.org
Whole thread Raw
In response to Re: JOIN results of refcursor functions  (Milan Oparnica <milan.opa@gmail.com>)
Responses Re: JOIN results of refcursor functions  (Milan Oparnica <milan.opa@gmail.com>)
List pgsql-sql
Milan Oparnica escribió:

> I've searched documentation (8.3) and didn't find a way to use OUT  
> variables in same manner as SETOF (RETURN NEXT doesn't create a record  
> type result).
>
> Can you please give an example of how to return select fld1, fld2 from  
> table through OUT variables so the caller gets records ?

create function foo (a int, out b int, out c text) returns setof record language plpgsql as $$      
begin                                                                                               
b = 2 * a;                                                                                          
c = 'dos por a';                                                                                    
return next;                                                                                        
b = 3 * a;                                                                                          
c = 'tres por a';                                                                                   
return next;                                                                                        
end; $$ ;
                                                                              
 
alvherre=# select * from foo(4);                                                                    b  |     c
                                                                              
 
----+------------                                                                                    8 | dos por a
                                                                              12 | tres por a
                                                        
 
(2 filas)                                                                                           

I guess you should be able to do the same with cursor operations.  I
haven't seen how you use refcursor in a plpgsql function.

-- 
Alvaro Herrera                                http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.


pgsql-sql by date:

Previous
From: Milan Oparnica
Date:
Subject: Re: JOIN results of refcursor functions
Next
From: "John Dizaro"
Date:
Subject: how to update 400 000 register not at the same time?