Поделиться через


ABS (Transact-SQL)

Математическая функция, возвращающая абсолютное (положительное) значение указанного числового выражения.

Значок ссылки на разделСинтаксические обозначения в Transact-SQL

Синтаксис

ABS ( numeric_expression )

Аргументы

  • numeric_expression
    Выражение категории точного числового или приблизительного числового типа данных, за исключением типа данных bit.

Типы возвращаемых данных

Возвращает тот же тип, что и аргумент numeric_expression.

Примеры

В следующем примере показаны результаты применения функции 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».