Последнее обновление
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 |
+------------------------------+------------------------------+