Преобразование VarChar-Date в Unix Timesamp в mySQL

0

Привет, StackOverflow,

У меня есть mySQL-база данных с столбцом с именем date (varchar64) и нужны значения (т.е. 01.12.15), преобразованные в значение метки времени. Поэтому я ищу запрос на обновление, который будет делать трюк.

Что-то с UNIX_TIMESTAMP(STR_TO_DATE('26.11.17', '%d.%m.%y'))? Я не знаю, как сделать запрос с этим. Может ли кто-нибудь помочь?

Спасибо за вашу помощь!

  • 0
    где проблема с вашим предложением? Все работает как положено sqlfiddle.com/#!9/4bc753/2
  • 0
    Да, но как я могу обновить мою колонку? Я понятия не имею, как должен выглядеть запрос. Что-то вроде "Обновить" дата "SET ..."?
Показать ещё 3 комментария
Теги:
phpmyadmin

1 ответ

0

Чтобы получить UNIX_TIMESTAMP(STR_TO_DATE('01.12.15', '%d.%m.%y')); метку по varchar: UNIX_TIMESTAMP(STR_TO_DATE('01.12.15', '%d.%m.%y'));
Чтобы получить varchar по метке времени: GET_FORMAT(FROM_UNIXTIME(timestamp), '%d.%m.%y');

Обратите внимание, что это повлияло на ваш текущий часовой пояс.
Кроме того, это не хороший подход к хранению времени по varchar. Это пустая трата пространства и медленнее. Если вы хотите сохранить время, не зависящее от часовой пояс, просто используйте тип TIMESTAMP или тип BIGINT. Если вы хотите сохранить время, зависящее от времени, просто используйте тип DATETIME.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню