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

Преобразовать значение даты и времени в строку

Я получаю текущую дату и время, используя NOW() в MySQL. Я хочу преобразовать значение даты в varchar и объединить его с другой строкой. Как мне это сделать?

4b9b3361

Ответ 1

Используйте DATE_FORMAT()

SELECT
  DATE_FORMAT(NOW(), '%d %m %Y') AS your_date;

Ответ 2

Это супер старый, но я решил, что добавлю 2c. DATE_FORMAT действительно возвращает строку, но я искал функцию CAST в ситуации, когда у меня уже была строка datetime в базе данных и ей нужно было сопоставить шаблон с ней:

http://dev.mysql.com/doc/refman/5.0/en/cast-functions.html

В этом случае вы должны использовать:

CAST(date_value AS char)

Это отвечает на несколько иной вопрос, но заголовок вопроса кажется довольно неоднозначным, что это может помочь кому-то найти.

Ответ 3

Попробуйте следующее:

concat(left(datefield,10),left(timefield,8))
  • 10 char в поле даты на основе полной даты yyyy-MM-dd.

  • 8 char в поле времени на основе полного времени hh:mm:ss.

Это зависит от формата, который вы хотите. обычно вы можете использовать script выше, и вы можете конкатрировать другое поле или строку, как вы этого хотите.

Потому что фактическое поле даты и времени протекает как строка, если вы его читаете. Но, конечно, вы получите ошибку при обновлении или вставьте ее.