Справочник по функциям

MAKETIME

Аналог в PostgreSQL:

Возвращает время, составленное из часов, минут и секунд.

MySQL 8.1
MAKETIME(hour, minute, second)

Параметры

hourINT
Часы, могут быть больше 23 и отрицательными
minuteINT
Минуты от 0 до 59
secondDECIMAL
Секунды от 0 до 59, могут быть дробными

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

Время (TIME) от -838:59:59 до 838:59:59, часы могут быть больше 23; NULL, если минуты или секунды вне диапазона от 0 до 59

Примеры

Время из часов, минут, секунд

MySQL 8.1
SELECT MAKETIME(12, 30, 45);
MAKETIME(12, 30, 45)
12:30:45

Больше суток и дробные секунды

MySQL 8.1
SELECT MAKETIME(100, 30, 45.5);
MAKETIME(100, 30, 45.5)
100:30:45.5

Минуты вне диапазона

MySQL 8.1
SELECT MAKETIME(12, 60, 0);
MAKETIME(12, 60, 0)
<NULL>

Подробности

Результат — значение TIME, а у этого типа есть предел: часы больше 838 обрезаются, MAKETIME(900, 0, 0) вернёт 838:59:59 с предупреждением.

Смотрите также