[pgbr-geral] Usar ARRAY's como lista

Osvaldo Kussama osvaldo.kussama em gmail.com
Segunda Novembro 10 18:47:25 UTC 2008


Em 10/11/08, Daniel Robert Costa<daniel.robert.costa em terra.com.br> escreveu:
> Boa tarde galera.
>
> Tô com uma dúvida e queria saber se dá certo.
> Estou montando uma função onde alguns dos parâmetros são arrays (INTEGER[],
> VARCHAR[]).
> Em determinado momento da função, eu precisava utilizar o conteúdo do
> parametro INTEGER[] como uma lista, mas manter o tipo INTEGER dos itens da
> lista.
> Por exemplo:
>
> CREATE FUNCTION teste ( p_numeros INTEGER[] ) RETURNS SETOF tipo AS
> $$
> DECLARE
>     var_record RECORD;
> BEGIN
>     FOR var_record IN
>         SELECT blablabla
>         FROM tabela
>         WHERE numero IN ( p_numeros )
>     LOOP
>         /* bla bla bla */
>     END LOOP;
>     RETURN;
> END;
> $$ LANGUAGE 'plpgsql'
>
> É possível realizar tal manobra?
> A única função que encontrei é a array_to_string, mas não me serve, pois os
> campos devem ser numéricos.
>


Avalie a possibilidade de usar:
  WHERE numero = ANY (p_numeros)

Osvaldo



More information about the pgbr-geral mailing list