Vc vai ter q usar case when e testar o valor nulo, nulo e um tipo toda
operaçao com nulo vc tem que trasformar para o tipo, no seu caso acho que
um texto vazio, para somas e normal transformar em zero e por ai vai
Em 13/06/2014 19:44, "Junior Miranda" <[email protected]> escreveu:

> Boa noite!
>
> Criei uma função que retorna RECORD (postgresql). Dentro desta função
> possuo uma concatenação do caractere de vazio com um campo.
> Ex.
> Código:
>
> return query select
>                         field01,
>                         field02,
>                         '  ' || field03 as field03
>                    from campo
>                    order by field01;
>
>
> A função é comitada sem problema algum, mas quando realizo a consulta,
> retorna o erro
> Ex.
> Código:
>
> select field01,
>           field02,
>           field03
> from funcao()
> as Tabela(field01  integer, field02  varchar(6), field03 character
> varying(38))
>
>
> ERRO: structure of query does not match function result type
> DETAIL: Tipo text retornado não corresponde ao tipo character
> varying(3Cool esperado na coluna 3.
> CONTEXT: PL/pgSQL function fn_sisbusca_grupos() line 17 at RETURN QUERY
>
> ********** Error **********
> ERRO: structure of query does not match function result type
> SQL state: 42804
>
> Já usei CONCAT, também, e tenho o mesmo erro. A concatenação está
> retornando um tipo de dado "diferente" do esperado. Alguém já passou por
> situação parecida??
>
> *Analista de Sistemas*
> *Especializando em Sistemas Computacionais*
> *E-mail: [email protected] <[email protected]>*
> *Tel.: *(75) 9191-1678/ 34143042/ 34143149/ 34143020
>
>
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a