Re: FUNCION QUE RETORNA UNA TABLA

From: Aldo Alexander Leyva Alvarado <aleyva2004(at)gmail(dot)com>
To: Raul Caso <feve18(at)gmail(dot)com>
Cc: postgreSQL <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: FUNCION QUE RETORNA UNA TABLA
Date: 2006-01-19 16:18:53
Message-ID: 7a47bbbd0601190818x21c36223t@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Gracias por las respuestas, encontrando en mail pasados de la lista,
encontre hacerlo creando un TIPO segun los datos que quiero obtener, como
RETURN pongo al TIPO, Gracias:
Asi quedo!

CREATE OR REPLACE FUNCTION sp_metros_tgm_en_sala(int, timestamp) RETURNS
SETOF tip_tgm_ubicadas AS'
DECLARE
var_id_local ALIAS FOR $1;
var_fecha ALIAS FOR $2;

tabla tip_tgm_ubicadas%rowtype;
BEGIN

FOR tabla IN SELECT id_maquina, MAX(fecha) as fecha FROM maquinas_ext WHERE
fecha<="var_fecha" GROUP BY id_maquina INTERSECT SELECT id_maquina, fecha
FROM maquinas_ext WHERE fecha<="var_fecha" AND id_local=var_id_local ORDER
by id_maquina LOOP
RETURN NEXT tabla;
END LOOP;

RETURN;

END;
'LANGUAGE 'plpgsql';

donde tip_tgm_ubicadas es un TYPE:

CREATE TYPE tip_tgm_ubicadas AS
(id_maquina int4,
fecha timestamp);
ALTER TYPE tip_tgm_ubicadas OWNER TO php_flamingo;

Gracias !!

El día 19/01/06, Raul Caso <feve18(at)gmail(dot)com> escribió:
>
>
>
> El día 19/01/06, Aldo Alexander Leyva Alvarado <aleyva2004(at)gmail(dot)com>
> escribió:
> >
> > Como seria en el caso q se desee devolver solo unos campos de la tabla?
>
>
>
> CREATE OR REPLACE FUNCTION sel_cie10()
> RETURNS SETOF record AS
> $BODY$
> declare
> tabla record;
> begin
> for tabla in select campo1,campo2,campon from cie10 loop
> return next tabla;
> end loop;
> return;
> end
> $BODY$
> LANGUAGE 'plpgsql'
>

y lo llamas asi select * from sel_cie10() as datos(campo1
> tipodedatodelcampo,campo2 tipodedatodelcampo,campon tipodedatodelcampo)
>
> esto es para darle la estructura del registro a devolverte
> --
> ¿Quieres ser parte del 5% o del 95%?
> http://www.ixp.net/rcaso
> Raulinho
> 97727662-4327239
>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2006-01-19 16:21:34 Re: Cursor en Procedimiento plpgsql
Previous Message Luis Guevara 2006-01-19 16:18:17 Re: FUNCION QUE RETORNA UNA TABLA