본문으로 바로가기

 

 

이번 글에서는 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

CASE ~ WHEN ~ THEN문 개념 및 예제

COALESCE() 함수 개념 및 예제