› Fóruns › SQL e PL/SQL › Problema com divisão por zero › Problema com divisão por zero
Bom dia,
Nas colunas em que você usa divisão, coloca mais um decode, segue um exemplo com a coluna PC_MEDICOMI
DECODE(NVL(SUM(VW_COMIITEMPEDIVEND.VL_TOTAOPER),0), 0, 0,
DECODE(NVL(SUM(VW_COMIITEMPEDIVEND.VL_TOTAOPER),0), 0, 0,
(NVL(SUM(VW_COMIITEMPEDIVEND.VL_FATOCALCCOMI),0) / NVL(SUM(VW_COMIITEMPEDIVEND.VL_TOTAOPER),0)* 100))) AS PC_MEDICOMI,
Não testei, mas o que quis fazer é o seguinte:
Caso o campo que irá efetuar a divisão, no caso ser o divisor, for 0, já retorna 0, se não aii sim efetua a divisão e multiplicação consequentemente.
Pois o erro ocorre quando o campo que está dividindo é 0.
Olha esse exemplo simples, da o mesmo erro:
select (5 / 0) from dual;
t++