데이터가 많은 테이블의 건 수를 조회하려고 할 때
SQL0802N
Arithmetic overflow or other arithmetic exception occurred.
산술 오버플로우 또는 다른 산술 예외가 발생했습니다.
산술 오버플로우 또는 다른 산술 예외가 발생했습니다.
위와 같은 오류가 발생할 수 있다.
이는, MAX_LONGINT_INT 제약 (2,147,483,647) 보다 더 많은 건 수를 담고 있는 테이블에
SELECT COUNT 문을 수행했을 경우 발생하며
이 때는 COUNT_BIG 함수를 사용하면 정상적으로 수행할 수 있다.
select count_big(*) from HUGE_TABLE;
한편, INT 타입의 컬럼을 SUM 하다보면 INT 타입의 크기 제약으로 인해 산술 오버플로우가 발생할 경우도 있는데
이런 경우에는 CAST를 해서 SUM 하면 된다.
select SUM(CAST(col1 as BIGINT)) from TABLE;
select SUM(CONVERT(bigint, col1)) from TABLE;