mostrar resultado del cursor.

From: Gabriel Hermes Colina Zambra <hermeszambra(at)yahoo(dot)com>
To: systemguards(at)gmail(dot)com, pgsql-es-ayuda(at)postgresql(dot)org
Subject: mostrar resultado del cursor.
Date: 2008-02-22 03:50:21
Message-ID: 61245.50870.qm@web63706.mail.re1.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola listeros

Tengo esta funcion y quiero que me devuelva el cursor
resultante

El resultado que me arroja es unnamed portal2

Tambien se que pasando por parametros podria forzar el
nombre de ese cursor.

Lo cierto que con fetch all in o fetch all for

no me duevelve lo que espero

aca paso la funcion a ver que me pueden sugerir

CREATE OR REPLACE FUNCTION "public"."pivot_table"
(tvista_tabla text, tcampo1 text, tcampo2 text,
tcampo3 text) RETURNS "pg_catalog"."refcursor" AS
$body$
DECLARE
tvista_tabla alias for $1;
tcampo1 alias for $2;
tcampo2 alias for $3;
tcampo3 alias for $4;
tcuerpo text;
mvista RECORD;
ref refcursor;
nI integer;
BEGIN
nI:=0;
tcuerpo:='';
FOR mvista IN execute 'SELECT '|| tcampo2 ||' as
campo2 FROM '|| tvista_tabla
|| ' GROUP BY '|| tcampo2 || ' ORDER BY ' || tcampo2
LOOP
nI:=nI + 1;
tcuerpo:=tcuerpo || ' sum(case when ' || tcampo2 ||
'=' || mvista.campo2 || ' then ' || tcampo3 || ' else
0 end) as ' || mvista.campo2 || nI || ',';
END LOOP;
open ref for execute 'select
id_empresa,sum(importe_con_impuestos) as pepe from '
|| tvista_tabla || ' GROUP BY '|| tcampo1 || ' ORDER
BY ' || tcampo1;
RETURN ref;
END;
$body$
LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT
SECURITY INVOKER;

Gabriel Hermes Colina Zambra

____________________________________________________________________________________
¡Capacidad ilimitada de almacenamiento en tu correo!
No te preocupes más por el espacio de tu cuenta con Correo Yahoo!:
http://correo.espanol.yahoo.com/

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2008-02-22 04:10:22 Re: Modificar valor OID
Previous Message Alejandro D. Burne 2008-02-22 00:09:41 Re: Error pgpool - II