Как я могу получить общее количество секунд с '1970-01-01 00:00:01'
из экземпляра DateTime в MySQL?
Как преобразовать DateTime в число в MySQL?
Ответ 1
Вы ищете UNIX_TIMESTAMP()
.
Смотрите: http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_unix-timestamp
Если UNIX_TIMESTAMP() вызывается с аргументом date, он возвращает значение аргумента в секундах с "1970-01-01 00:00:00" UTC.
Ответ 2
Используйте UNIX_TIMESTAMP (dateField)
Ответ 3
SELECT DATE_FORMAT (value
, '% Y% m% d') AS date_ymd
FROM table_name
;
Ответ 4
UNIX_TIMESTAMP(datetime)
принудительно локализует дату-время, которое в отличие от метки времени сохраняется "как есть".
Для отказа от коррекции UTC вам необходимо выполнить любое из следующих действий:
UNIX_TIMESTAMP(CONVERT_TZ(datetime, '+00:00', @@session.time_zone))
или
TIMESTAMPDIFF(SECOND,'1970-01-01 00:00:00',datetime)