Как преобразовать следующее в дату вставки/обновления в a TIMESTAMP
или DATE
поле в MySQL?
'15-Dec-09'
DATE_FORMAT()
привык к дате формата, но не наоборот.
Вы можете использовать функцию STR_TO_DATE()
. Это функция, обратная DATE_FORMAT()
функции.
STR_TO_DATE(str,format)
Это функция, обратная
DATE_FORMAT()
. Она принимает строкуstr
и строку форматаformat
.STR_TO_DATE()
возвращает значениеDATETIME
, если строка формата содержит части даты и времени, или значениеDATE
илиTIME
, если строка содержит только части даты или времени. Если значение даты, времени или времени суток, извлеченное изstr
, является недопустимым,STR_TO_DATE()
возвращаетNULL
и выдает предупреждение.
Пример:
SELECT STR_TO_DATE('15-Dec-09', '%d-%b-%y') AS date;
+------------+
| date |
+------------+
| 2009-12-15 |
+------------+
1 row in set (0.00 sec)