Caros
Boa tarde.

Estava em busca de uma função para operação ternária e encontrei o exemplo
abaixo no link a seguir
http://postgresql.1045698.n5.nabble.com/Operador-quot-quot-td2044065.html

create or replace function fc_iif(boolean, anyelement, anyelement) returns
anyelement as
$$
  select case when $1 is true then $2 else $3 end;
$$
language 'sql';

Exemplo de uso: select fc_iif( (tipopessoa='F'), 'FISICA', 'JURIDICA' )
from pessoa

Ao testar a função com o exemplo sugerido pelo autor, recebo a mensagem
"Nenhuma função corresponde com o nome e os tipos de argumentos informados.
Você precisa adicionar conversões de tipo explícitas."

Estou utilizando a versão 9.3 do PG e ainda não consegui entender porque do
não funcionamento com tipos polimórficos.

O Post é de 2009 e talvez na época o PG permitia esse tipo de função, fato
é que a função é bem simples e a utilização da mesma deixa o sql mais
legível.

Aguardo possíveis considerações dos colegas.

-- 

Atenciosamente,

André Geraldo dos Santos
Certified Delphi® Developer XE2
Analista Desenvolvedor e Consultor
Belo Horizonte / Minas Gerais
E-mail:[email protected]
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a