Функция SIGN
Функция SIGN определяет знак числа.
Если число больше нуля - функция вернет 1,
если меньше нуля - вернет -1, а если
равно нулю - вернет 0.
Синтаксис
SELECT SIGN(поле) FROM имя_таблицы WHERE условие
Таблицы для примеров
| id айди |
date дата |
temperature температура |
|---|---|---|
| 1 | 2010-06-01 | 25 |
| 2 | 2010-14-01 | 0 |
| 3 | 2010-12-01 | -25 |
Пример
Давайте определим знак температуры и запишем его в поле sign:
SELECT *, SIGN(temperature) as sign FROM weather
Результат выполнения кода:
| id айди |
date дата |
temperature температура |
sign знак температуры |
|---|---|---|---|
| 1 | 2010-06-01 | 25 | 1 |
| 2 | 2010-14-01 | 0 | 0 |
| 3 | 2010-12-01 | -25 | -1 |
Меняем таблицу для примеров
Давайте изменим таблицу weather так,
чтобы в ней хранился знак температуры, а
не ее значение:
| id айди |
date дата |
sign знак температуры |
|---|---|---|
| 1 | 2010-12-01 | -1 |
| 2 | 2010-14-01 | 0 |
| 3 | 2010-06-01 | 1 |
Пример
Давайте теперь добавим новую запись в таблицу так, чтобы mySQL сам вычислил знак температуры:
INSERT INTO weather SET date='2010-12-02', sign=SIGN(-30)
Результат выполнения кода:
| id айди |
date дата |
sign знак температуры |
|---|---|---|
| 1 | 2010-12-01 | -1 |
| 2 | 2010-14-01 | 0 |
| 3 | 2010-06-01 | 1 |
| 4 | 2010-12-02 | -1 |
Смотрите также
-
функцию
ABS,
которая находит модуль числа