ORA-01476: 제수가 0 입니다. divisor is equal to zero
원인은 Zero값으로 임의의 수를 나누었을때 발생한다.
아래와 같이 분모가 0이면 이런
SELECT 100 / 0 FROM DUAL
해결 방법은 이러하다.
■NULLIF 함수 사용
SELECT NVL(A/NULLIF(B,0),0)
FROM (SELECT 100 A, 0 B FROM DUAL)
■NULLIF 함수란
NULLIF( expr1, expr2 )
expr1과 expr2의 값이 같을 때 NULL을 반환하는 함수이다.
■DECODE 사용
SELECT NVL(A/DECODE(B,0,NULL, B),0)
FROM (SELECT 100 A, 0 B FROM DUAL)