Перейти к содержимому
Последнее обновление

SIGN

Описание​

Возвращает знак x. Отрицательным числам, нулю и положительным числам соответствуют -1, 0 и 1 соответственно.

Синтаксис​

SIGN(x)

Параметры​

ПараметрОписание
<x>независимая переменная

Возвращаемое значение​

Возвращает целое число:

  • Если x > 0, возвращает 1, что соответствует положительному числу.

  • Если x = 0, возвращает 0, что соответствует нулю.

  • Если x < 0, возвращает -1, что соответствует отрицательному числу.

  • Если x равен NULL, возвращает NULL.

Обратите внимание: для положительного и отрицательного нуля с плавающей точкой функция возвращает 0 в обоих случаях. Чтобы различать положительный и отрицательный ноль в числах с плавающей точкой, можно использовать функцию <signbit>.

Пример​

select sign(3);
+-------------------------+
| sign(cast(3 as DOUBLE)) |
+-------------------------+
| 1 |
+-------------------------+
select sign(0);
+-------------------------+
| sign(cast(0 as DOUBLE)) |
+-------------------------+
| 0 |
+-------------------------+
select sign(-10.0);
+-----------------------------+
| sign(cast(-10.0 as DOUBLE)) |
+-----------------------------+
| -1 |
+-----------------------------+
select sign(null);
+------------+
| sign(NULL) |
+------------+
| NULL |
+------------+
select sign(cast('+0.0' as double)) , sign(cast('-0.0' as double));
+------------------------------+------------------------------+
| sign(cast('+0.0' as double)) | sign(cast('-0.0' as double)) |
+------------------------------+------------------------------+
| 0 | 0 |
+------------------------------+------------------------------+