물론 0으로 나눌 상황을 안만드는게 제일 좋지만
내가 시스템 전체를 만드는 것도아니고, 데이터는 다른곳에서 넣었는데 내가 계산해야 하는경우도 많다. 데이터를 모두 검증할수도 없고.
그럴때 다음 명령어를 쓰면 0 나누기 발생 시 NULL을 반환한다.
SET ANSI_WARNINGS OFF
SET ARITHIGNORE ON
SET ARITHABORT OFF
프로시저나 함수를 만들때 상단에 선언해두면 해당 세션 전체에 적용되서 편하다.
위 설정을 해주고 다음처럼 처리하면 된다.
SELECT ISNULL(10 / 0, 0) --이렇게 하면 결과값이 0이 된다.
반응형
'프로그래밍 > 데이터베이스' 카테고리의 다른 글
MS-SQL 올림, 반올림, 내림 쿼리 (0) | 2022.05.01 |
---|---|
통계를 이용한 인덱스 추천 (0) | 2021.05.10 |
데이터베이스 용량 확인 방법 (0) | 2021.04.27 |
SELECT만 하는데 자꾸 LOCK이 걸리는 경우 (0) | 2021.04.17 |
프로시저 내용 전체 검색하는 방법 (0) | 2021.04.17 |