이번 글에서는 ORA-01476: divisor is equal to zero 에러 해결방법에 대하여 알아보겠습니다.
ORA-01476: divisor is equal to zero
ORA-01476: 제수가 0 입니다.
쿼리를 짜다가 아래와 같은 에러가 발생하였습니다.
예제를 통하여 에러가 발생한 이유와 해결 방법에 대하여 알아보도록 하겠습니다.
아래의 쿼리는 5를 0으로 나눈 결과값을 조회하는 예제입니다.
위의 쿼리를 실행하니 ORA-01476: divisor is equal to zero 에러가 발생하였습니다.
이 에러가 발생한 이유는 말 그대로 제수가 0이어서 그렇습니다.
즉, 분모가 0이여서 발생하는 에러입니다. 분모에는 0이 올 수가 없습니다.
따라서, 쿼리를 작성하다가 분모 값이 0이 온다면 CASE ~ WHEN ~ THEN 문 및 NVL(), COALESCE() 이용하여 해결할 수 있습니다.
아래 쿼리는 분모가 0이 아닐 때만 연산식을 수행하고 아니면 0을 출력하는 쿼리입니다.
이런 식으로 쿼리를 작성한다면 ORA-01476: divisor is equal to zero 에러는 발생하지 않을 것입니다.
References