Em 13/01/11, Rodrigo Silva<[email protected]> escreveu:
> Pessoal,
>
> Estou quebrando a cabeça para pegar o campo resposta e trabalhar com o
> resultado.
>
> No campo "resposta" tenho o valor "1245799779", quero trabalhar com cada
> valor, ou seja, pegar o número 1 e efetuar cálculos com ele, depois pegar o
> número 2, etc. Acredito que tenha que jogar o valor em um array, mas como
> colocar na function... obrigado.
>
> CREATE OR REPLACE FUNCTION "public"."gerar_tabulacao_z" (
> )
> RETURNS SETOF "public"."respostamodelo" AS
> $body$
> DECLARE
>     r respostamodelo%rowtype;
> BEGIN
>     FOR r IN SELECT resposta
>              FROM respostamodelo
>              WHERE unidade = '0000000461'
>              AND modelo = 'P'
>     LOOP
>
>         RETURN NEXT r; -- return current row of SELECT
>     END LOOP;
>     RETURN;
> END
> $body$
> LANGUAGE 'plpgsql'
>

Algo do tipo:
bdteste=# SELECT regexp_split_to_array('1245799779', E'\\s*');
 regexp_split_to_array
-----------------------
 {1,2,4,5,7,9,9,7,7,9}
(1 row)

http://www.postgresql.org/docs/current/interactive/functions-matching.html#FUNCTIONS-POSIX-REGEXP

Osvaldo
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a