Pular para o conteúdo

Fóruns SQL e PL/SQL Problema com divisão por zero Problema com divisão por zero

#95246
diego_aj
Participante

    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++