0으로 나누기 오류가 발생했습니다.
통계 시스템을 만드는 도중 다음과 같은 에러를 발견했다.
에러 그대로 0으로 나누기를 하면 오류가 발생한다.
***쿼리 실험***
--NULL로 나눌 때 SELECT ( 1 / A.AA) AS A_NULL FROM (SELECT NULL AS AA) A --1로 나눌 때 SELECT ( 1 / A.AA) AS A_1 FROM (SELECT 1 AS AA) A --2로 나눌 때 SELECT ( 1 / A.AA) AS A_2 FROM (SELECT 2 AS AA) A --0으로 나눌 때 SELECT ( 1 / A.AA) AS A_0 FROM (SELECT 0 AS AA) A
결과는 다음과 같다.
SET ANSI_WARNINGS OFF SET ARITHIGNORE ON SET ARITHABORT OFF
을 추가 해주는 것으로 문제가 해결된다.
0으로 나눈 것이 NULL로 처리된다.
***설정 참고 페이지***
http://technet.microsoft.com/ko-kr/library/ms189118(v=sql.105).aspx