2015-01-08 8:32 GMT-02:00 Marcelo Florindo <marceloflori...@gmail.com>:
> CREATE OR REPLACE FUNCTION fordenacao( > vfield text, > vin text) > RETURNS text AS > $BODY$ > DECLARE > vorder integer DEFAULT 1; > vindice integer; > vcodigo integer[] DEFAULT string_to_array(vin,',')::integer[]; > vordenacao text DEFAULT ''; > BEGIN > FOR vindice IN array_lower(vcodigo,1)..array_upper(vcodigo,1) LOOP > vordenacao := vordenacao||' WHEN '||vcodigo[vindice]::text||' THEN > '||vorder::text; > vorder := vorder + 1; > END LOOP; > vordenacao := '(CASE '||vfield||' '||vordenacao||' END)'; > RETURN vordenacao; > END; > $BODY$ > LANGUAGE > > Muito obrigado pessoal! > Marcelo, Como eu já comentei em [1], essa função está incorreta. Ou estou enganado e alguém quer me ajudar a entender como isso seria uma solução correta? [1] http://www.mail-archive.com/pgbr-geral@listas.postgresql.org.br/msg39367.html Atenciosamente, -- Matheus de Oliveira Analista de Banco de Dados Dextra Sistemas - MPS.Br nível F! www.dextra.com.br/postgres
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral