Перейти к основному содержимому
Перейти к основному содержимому

Date

Дата. Хранится в двух байтах как количество дней с 1970-01-01 (без знака). Позволяет сохранять значения с самого начала эпохи Unix до верхнего порога, определенного константой на этапе компиляции (в настоящее время это до 2149 года, но окончательный полностью поддерживаемый год — 2148).

Поддерживаемый диапазон значений: [1970-01-01, 2149-06-06].

Значение даты хранится без учёта часового пояса.

Пример

Создание таблицы с колонкой типа Date и вставка данных в неё:

CREATE TABLE dt
(
    `timestamp` Date,
    `event_id` UInt8
)
ENGINE = TinyLog;
-- Парсить дату
-- - из строки,
-- - из 'малого' целого числа, интерпретируемого как количество дней с 1970-01-01, и
-- - из 'большого' целого числа, интерпретируемого как количество секунд с 1970-01-01.
INSERT INTO dt VALUES ('2019-01-01', 1), (17897, 2), (1546300800, 3);

SELECT * FROM dt;
┌──timestamp─┬─event_id─┐
│ 2019-01-01 │        1 │
│ 2019-01-01 │        2 │
│ 2019-01-01 │        3 │
└────────────┴──────────┘

См. также