Gente, buenos días.

Bueno, esto tema de seguro se habrá tocado, pero no logro dar con lo que 
necesito.
La function que necesito es la que devuelve valores en registros:

Dentro de ella quiero devolver N filas del tipo ej: codigo NUMERIC, descripción 
VARCHAR(30)

Pero esta devolución la hago loopeando una tabla y retornando valores a manos. 
La idea es joinearla en sql.

Ej:


Create or replace function test() returns ????? as
$$
Declare
  C1 record;
Begin
  For c1 in (select codigo, descripcion from tabla) loop
    Return c1.codigo, c1.descripcion;
        o
    Return next c1.codigo, c1.descripcion;
--LEI POR AHÍ, QUE ESTO DEBO HACERLO CON WHILE Y NO CON FOR, PUEDE SER?
  End loop;

  --ACA QUIERO POR EJEMPLO, DEVOLVER VALORES A MANO
  Return next 999, 'CODIGO MANUAL';

  --ACA QUIERO LLAMAR A UNA FUNCION Y QUE ELLA DEVUELVA UN REGISTRO
  --DEL MISMO TIPO
  Return f_devolver_codigo_descripcion;
End;
$$ language 'plpgsql'

Lo ideal es poder hacer estas 3 cosas, en realidad, en la function tengo que 
hacer estas cosas.
Bueno, la verdad, no encuentro la forma de poder armar esta function y que 
pueda devolver registro y que a su vez la pueda joinear en una sentencia sql

Desde ya, muchas gracias.
Saludos,
Conrado

--
TIP 2: puedes desuscribirte de todas las listas simultáneamente
    (envía "unregister TuDirecciónDeCorreo" a majord...@postgresql.org)

Responder a