Последнее обновление
TO_SECONDS
Описание
Функция вычисления количества секунд. Преобразует дату в количество секунд, прошедших с базовой даты (0000-00-00) до указанной даты.
Поведение этой функции соответствует поведению функции to_seconds в MySQL.
Синтаксис
TO_SECONDS(`<date_or_time_expr>`)
Параметры
| Параметр | Описание |
|---|---|
<date_or_time_expr> | Входное значение даты и времени. Поддерживаются типы DATE/DATETIME/TIMESTAMP_NS. Подробнее о форматах даты и времени см. в разделах Преобразование даты и времени и Преобразование даты. |
Возвращаемое значение
Возвращает общее количество секунд от нулевой даты (0000-00-00) до указанных даты и времени в виде значения типа BIGINT.
Если входное значение равно NULL, возвращается NULL.
Примеры
-- Based on the date `0000-00-00`
select to_seconds('0000-01-01');
+--------------------------+
| to_seconds('0000-01-01') |
+--------------------------+
| 86400 |
+--------------------------+
-- Starting from 00-00, count 1 day, a total of 24 * 3600 == 86400 seconds.
select to_seconds('2025-01-01'), to_seconds(20250101);
+--------------------------+----------------------+
| to_seconds('2025-01-01') | to_seconds(20250101) |
+--------------------------+----------------------+
| 63902908800 | 63902908800 |
+--------------------------+----------------------+
SELECT
to_seconds('2025-01-01 11:22:33') AS datetime_type,
to_seconds(20250101112233) AS int_type;
+---------------+-------------+
| datetime_type | int_type |
+---------------+-------------+
| 63902949753 | 63902949753 |
+---------------+-------------+
select to_seconds('9999-12-31 23:59:59.999999');
+------------------------------------------+
| to_seconds('9999-12-31 23:59:59.999999') |
+------------------------------------------+
| 315569519999 |
+------------------------------------------+
SELECT to_seconds(NULL);
+------------------+
| to_seconds(NULL) |
+------------------+
| NULL |
+------------------+