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


ABS (Transact-SQL)

Изменения: 17 июля 2006 г.

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

Значок ссылки на разделСинтаксические обозначения в 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».

См. также

Справочник

Функции CAST и CONVERT (Transact-SQL)
Типы данных (Transact-SQL)
Математические функции (Transact-SQL)
Функции (Transact-SQL)

Справка и поддержка

Получение помощи по SQL Server 2005

Журнал изменений

Версия Журнал

17 июля 2006 г.

Обновленное содержимое:
  • исправлен пример, демонстрирующий ошибку переполнения.