Re: select from lista de valores

From: Oswaldo Hernández <listas(at)soft-com(dot)es>
To: Arcel Labrada Batista <alabradab(at)uci(dot)cu>
Cc: pgsql-es-ayuda(at)postgresql(dot)org, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Subject: Re: select from lista de valores
Date: 2010-02-03 15:44:51
Message-ID: 4B6999F3.3040203@soft-com.es
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Arcel Labrada Batista escribió:
> me parece que con
>
> select 1,2,3,4,5;
>
> se resuelve tu problema

No, porque eso devuelve una fila con 5 columnas, mientras que lo que
necesito es que devuelva cada uno de los valores en una fila distinta.

Finalmente lo que he hecho es crear la funcion 'unest()' para que
funcione en 8.3. Aqui va por si alguien tiene el mismo problema.

CREATE OR REPLACE FUNCTION public.unnest(IN valores anyarray, OUT val
anyelement)
RETURNS SETOF anyelement AS
$BODY$
/*******************************************
emulacion de funcion unnest(array[]) de 8.4
para utilizar en versiones inferiores
*******************************************/
declare
position integer;
begin

for position in array_lower(valores,1)..array_upper(valores,1)
loop
val = valores[position];
return next ;
end loop;

return;
end$BODY$
LANGUAGE 'plpgsql' VOLATILE;
ALTER FUNCTION public.unnest(anyarray) OWNER TO postgres;

Saludos,
--
*****************************************
Oswaldo Hernández
oswaldo (@) soft-com (.) es
*****************************************
PD:
Antes de imprimir este mensaje, asegúrese de que es necesario.
El medio ambiente está en nuestra mano.

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Giorgio 2010-02-03 16:01:01 Re: Ayuda con Select
Previous Message Arcel Labrada Batista 2010-02-03 15:27:16 Re: select from lista de valores