Подтвердить что ты не робот

Как преобразовать человеческую дату в временную метку unix в Mysql?

У меня есть таблица с полем даты, в которой есть человеческая дата: "2008-01-08 19:23:32" Теперь мне нужно скопировать это поле плюс некоторые другие поля одной таблицы в другую таблицу, но дата должна быть в отметке времени unix.

Есть ли какая-либо функция в mysql, которая преобразует человеческую дату в временную метку unix внутри самого запроса?

4b9b3361

Ответ 1

mysql> select unix_timestamp('2008-01-08 19:23:32');
+---------------------------------------+
| unix_timestamp('2008-01-08 19:23:32') |
+---------------------------------------+
|                            1199849012 |
+---------------------------------------+
1 row in set (0.04 sec)

найдено здесь: http://www.epochconverter.com/

Ответ 2

UNIX_TIMESTAMP() Необходимо сделать трюк!

Из документов MySQL:

Если вызывается без аргумента, возвращает отметку времени Unix (секунды с '1970-01-01 00:00:00' UTC) как целое число без знака. Если UNIX_TIMESTAMP() вызывается с аргументом date, он возвращает значение аргумента как секунд с '1970-01-01 00:00:00' UTC. дата может быть строкой DATE, строка DATETIME, TIMESTAMP или номер в формате YYMMDD или YYYYMMDD. Сервер интерпретирует дату как значение в текущее время zone и преобразует его во внутреннее значение в формате UTC.

mysql> SELECT UNIX_TIMESTAMP();
        -> 1196440210
mysql> SELECT UNIX_TIMESTAMP('2007-11-30 10:30:19');
        -> 1196440219

Ответ 3

SELECT UNIX_TIMESTAMP('2007-11-30 10:30:19');

Ответ 4

Да.   SELECT UNIX_TIMESTAMP (столбец) FROM TABLE