Последнее обновление
GREATEST
Описание
Сравнивает несколько выражений и возвращает наибольшее из их значений. Если хотя бы один аргумент равен NULL, возвращает NULL.
Синтаксис
GREATEST(<expr> [, ...])
Параметры
Обязательный параметр
<expr>: Поддерживаются типыTINYINT,SMALLINT,INT,BIGINT,LARGEINT,FLOAT,DOUBLE,STRING,DATETIMEиDECIMAL.
Необязательные параметры
- Поддерживается передача нескольких аргументов.
Возвращаемое значение
- Возвращает наибольшее значение среди заданных выражений.
- Если хотя бы один аргумент равен
NULL, возвращаетNULL.
Примечания по использованию
- Рекомендуется передавать аргументы одного типа. Если типы аргументов различаются, функция попытается привести их к одному типу. Правила преобразования см. в разделе Преобразование типов
- Если хотя бы один аргумент равен NULL, результат будет NULL.
Примеры
- Пример 1
SELECT GREATEST(-1, 0, 5, 8);+-----------------------+
| GREATEST(-1, 0, 5, 8) |
+-----------------------+
| 8 |
+-----------------------+ - Аргумент NULL
SELECT GREATEST(-1, 0, 5, NULL);+--------------------------+
| GREATEST(-1, 0, 5, NULL) |
+--------------------------+
| NULL |
+--------------------------+ - Преобразование типов
SELECT GREATEST(6, 4.29, 7);+----------------------+
| GREATEST(6, 4.29, 7) |
+----------------------+
| 7.00 |
+----------------------+Третий аргумент "7" преобразуется в тип Decimal.
- Тип даты
SELECT GREATEST('2022-02-26 20:02:11', '2020-01-23 20:02:11', '2020-06-22 20:02:11');+-------------------------------------------------------------------------------+
| GREATEST('2022-02-26 20:02:11', '2020-01-23 20:02:11', '2020-06-22 20:02:11') |
+-------------------------------------------------------------------------------+
| 2022-02-26 20:02:11 |
+-------------------------------------------------------------------------------+