# Функция SIGN

Функция `SIGN` определяет знак числа. Если число больше нуля - функция вернет `1`, если меньше нуля - вернет `-1`, а если равно нулю - вернет `0`.

## Синтаксис

`SELECT SIGN(поле) FROM имя_таблицы WHERE условие`

## Таблицы для примеров

таблица weather
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`,
  которая находит модуль числа

↑