ABS(Transact-SQL)
지정한 수식의 절대(양수) 값을 반환하는 수치 연산 함수입니다.
구문
ABS ( numeric_expression )
인수
- numeric_expression
정밀 숫자 또는 근사 숫자 데이터 형식 범주의 식입니다.
반환 형식
numeric_expression과 동일한 유형을 반환합니다.
예
다음 예에서는 3가지의 다른 숫자에 ABS 함수를 사용한 결과를 보여 줍니다.
SELECT ABS(-1.0), ABS(0.0), ABS(1.0);
결과 집합은 다음과 같습니다.
---- ---- ----
1.0 .0 1.0
ABS 함수가 수의 절대값이 지정된 데이터 형식으로 나타낼 수 있는 최대 수보다 크면 오버플로 오류가 발생할 수 있습니다. 예를 들어 int 데이터 형식은 -2,147,483,648에서 2,147,483,647까지의 값만 보유할 수 있습니다. 부호 있는 정수 -2,147,483,648에 대한 절대값을 계산하면 이 절대값이 int 데이터 형식의 양수 범위보다 크기 때문에 오버플로 오류가 발생합니다.
DECLARE @i int;
SET @i = -2147483648;
SELECT ABS(@i);
GO
아래의 오류 메시지가 나타납니다.
"메시지 8115, 수준 16, 상태 2, 줄 3"
"식을(를) 데이터 형식 int(으)로 변환하는 중 산술 오버플로 오류가 발생했습니다."