SQL - Problema com divisão por zero
Olá pessoal tenho um SQL que está dando o seguinte erro:
´divisor is equal to zero´, sei que este erro está dando por causa de uma divisão por 0, como posso arrumar isso dentro do meu sql??
[color=green:118b78e48d]Título editado por gandalf.nho. Removido ´urgente´[/color:118b78e48d]
´divisor is equal to zero´, sei que este erro está dando por causa de uma divisão por 0, como posso arrumar isso dentro do meu sql??
[color=green:118b78e48d]Título editado por gandalf.nho. Removido ´urgente´[/color:118b78e48d]
Daia
Curtidas 0
Melhor post
Rjun
06/05/2005
Eu não conheço Oracle mas se ele tiver ´CASE´ igual ao SQL Server daria pra fazer assim :
SELECT Descricao, t.cEstrutura, e.GrauMat, t.SaldoFisico, t.SaldoFinanceiro, case t.SaldoFisico When 0 then 0 Else t.SaldoFinanceiro / t.SaldoFisico as Divisao FROM EstrutMat e , ImpSaldoEstrut t WHERE e.GrauMat <= :GrauMat AND e.cEstrutura = t.cEstrutura AND t.Id = :Id ORDER BY t.cEstrutura
GOSTEI 1
Mais Respostas
Gandalf.nho
06/05/2005
Qual é a SQL e qual o banco de dados usado?
GOSTEI 0
Daia
06/05/2005
o banco é oracle...
Sql:
SELECT LPAD(´ ´, (e.GrauMat - 1) * 5) || FormataEstruturaMaterial(t.cEstrutura) || ´ - ´ || e.dEstrutura Descricao
, t.cEstrutura
, e.GrauMat
, t.SaldoFisico
, t.SaldoFinanceiro
, t.SaldoFinanceiro / t.SaldoFisico /* AQUI ESTÁ O ERRO
FROM EstrutMat e
, ImpSaldoEstrut t
WHERE e.GrauMat <= :GrauMat
AND e.cEstrutura = t.cEstrutura
AND t.Id = :Id
ORDER BY t.cEstrutura
Sql:
SELECT LPAD(´ ´, (e.GrauMat - 1) * 5) || FormataEstruturaMaterial(t.cEstrutura) || ´ - ´ || e.dEstrutura Descricao
, t.cEstrutura
, e.GrauMat
, t.SaldoFisico
, t.SaldoFinanceiro
, t.SaldoFinanceiro / t.SaldoFisico /* AQUI ESTÁ O ERRO
FROM EstrutMat e
, ImpSaldoEstrut t
WHERE e.GrauMat <= :GrauMat
AND e.cEstrutura = t.cEstrutura
AND t.Id = :Id
ORDER BY t.cEstrutura
GOSTEI 0
Rjun
06/05/2005
Coloque no Where uma clausula t.SaldoFisico <> 0
GOSTEI 0
Daia
06/05/2005
ok, funcionou... Mas eu queria que esse valor, mesmo sendo saldo zero aparecesse, não tem como??
GOSTEI 0