Преобразование значения DateTime в строку в Mysql
Я хочу конвертировать значение даты и времени в varchar, а затем хранить в базе данных
Я выбираю текущую дату и время, используя NOW () в mysql, и теперь хочу преобразовать его в строку, потому что мне нужно объединить это значение со строковым значением
3 ответов:
использовать DATE_FORMAT ()
SELECT DATE_FORMAT(NOW(), '%d %m %Y') AS your_date;
Это супер старый, но я решил, что добавлю свой 2c.
DATE_FORMATдействительно возвращает строку, но я искалCASTфункция, в ситуации, когда у меня уже была строка datetime в базе данных и ей нужно было соответствовать шаблону:http://dev.mysql.com/doc/refman/5.0/en/cast-functions.html
В этом случае можно использовать:
CAST(date_value AS char)это отвечает на несколько другой вопрос, но название вопроса кажется достаточно двусмысленным, что это может помочь кому-то искать.
попробуйте это:
concat(left(datefield,10),left(timefield,8))
10 символов в поле даты на основе полной даты
yyyy-MM-dd.8 char на поле времени на основе полного рабочего дня
hh:mm:ss.Это зависит от формата, который вы хотите. обычно вы можете использовать скрипт выше, и вы можете объединить другое поле или строку, как вы хотите.
потому что на самом деле поле даты и времени протектора как строка, если Вы читаете его. Но, конечно, вы получите ошибку при обновлении или вставлять ее.
Comments