[firebase-br] Iif e case

Edvaldo (bol) evgomes em bol.com.br
Dom Set 10 23:15:50 -03 2006


Será nulo...

Coloque em uma das condições <= ou >= desta forma não retorna nulo.

----- Original Message ----- 
From: "Guionardo Furlan" <guionardo em gmail.com>
To: "FireBase" <lista em firebase.com.br>
Sent: Friday, September 08, 2006 10:17 PM
Subject: Re: [firebase-br] Iif e case


Uma dúvida...

Se eu fizer

SELECT CASE
  WHEN VALOR<0 THEN (VALOR*-1)
  WHEN VALOR>0 THEN (VALOR)
  END AS VALOR_POS
...

Se VALOR=0 então não vai haver opção para o CASE.
Nesse caso, o valor de retorno será NULL ou será gerada uma exceção?


Em 05/09/06, Murilo Bento<murilo em cprinformatica.com.br> escreveu:
> problema resolvido =D
>
> select case
>             when vl_valor < 0 then (vl_valor * -1)
>             when vl_valor >= 0 then vl_valor
>             end as valor_positivo
> from....
>
>
>
>
>
>
> "Murilo Bento" <murilo em cprinformatica.com.br>
> escreveu na mensagem news:edkj63$9qd$1 em sea.gmane.org...
> > No Firebird 2.0 foi inserida a função Iif, eu naõ cheguei a testar, mas
> > tenho 2 dúvidas..
> >
> > 1ª - Eu poderia usar-lo exatamente como no delphi, por exemplo, assim :
> >
> > select Iif(vl_valor < 0, vl_valor, (vl_valor * -1)) from ........
> >
> >
> > ??????????
> >
> > 2ª - No Firebird 1.5?? Nõa há o Iif, sei que tem o case,que muito dizem
> > que é a mesma idéia, como eu faria o select acima no Firebird 1.5, é 
> > claro
> > possivelmente usando o case, pois acontece que o valor tem sempre que 
> > vir
> > positivo, estou usando a função abs de uma UDF, mas no dbExpress está
> > dando o seguinte erro:
> >
> > dbExpress Error:  Invalid Precision.
> >
> > Não sei o motivo, mas sei que é o abs, por isso gostaria de não precisar 
> > o
> > usar a função, e sim um comando mais "simples", que me da a garantia de
> > que não vai ocorrer este erro.
> >
> >
> > E é calro se alguém souber como resolver o erro do abs com o dbExpress
> > isso seria muito bem vindo, por que já que ela já está sendo usada no
> > sistema, não haveria problema.
> >
> >
> > Obrigado.
> >
> >
> >
> >
>
>
> --------------------------------------------------------------------------------
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>


-- 
Timeo hominem unius libri
Cogito ergo sum - Carpe diem

[]s
Guionardo Furlan
http://guionardo.antiblog.com

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa


-- 
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.405 / Virus Database: 268.12.2/441 - Release Date: 07/09/2006






Mais detalhes sobre a lista de discussão lista