Fórum Pq o expressão SQL não funciona ? #59919

29/06/2008

0

Olá!

Tenho o seguinte problame:

Tenho q calcular um percentual Campo1 / Campo2 * 100

Acontece q nem sempre o caompo1 é > q zero.

Quando: Campo1 := 0 ou null
Campo2 := 10 sempre > 0

Fiz o seguinte: Coalesce(Campo1,0)/Coalesce(Campo2,0)*100

Ao executa a expressão quando campo1 é = 0, gera um erro.

Como poderia fazer isto funcionar corretamente ?

Desde já meus agradecimentos.

ANT.CARLOS/SP


Ant.carlos/sp

Ant.carlos/sp

Responder

Posts

30/06/2008

Edilcimar

Se campo1 = 0 o resultado sempre será zero, porém se campo2 = 0 então você terá um erro, afinal de contas qualquer número dividido por zero é igual a infinito!


Responder

Gostei + 0

30/06/2008

Emerson Nascimento

creio que há algum equívoco na afirmação de que ´ao executa a expressão quando campo1 é = 0, gera um erro (sic)´.

deveria ocorrer um erro somente se o Campo2 for 0, pois não há divisão por zero.

faço minhas as ´palavras´ do Edilcimar.

uma solução seria você retornar 1 para o Campo2 no caso de ele ser nulo:
(Coalesce(Campo1,0)/Coalesce(Campo2,1))*100


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar