2015-03-16 8 views
-1

У меня есть строка дат в php (dd/mm/yyyy), которую я хочу преобразовать в формат yyyy-mm-dd.Преобразование формата даты в SQL

Я попытался:

UPDATE `table` SET `DATE_VAR` = convert(datetime,'19/03/2015', 121) WHERE `ID`=160 

Можете ли вы мне помочь?

+0

Не храните дату в виде текста в своем db. используйте формат даты. Также это выглядит как mssql query, а не mysql. – Jens

+0

Также смотрите STR_TO_DATE и руководство в целом. – Strawberry

+0

это хорошо с решением Ronak Patel, с PHP это легко! – Neyoh

ответ

1

Если вы хотите сделать преобразование даты в PHP. Тогда один из решений может быть:

$originalDate = str_replace('/', '-', "19/03/2015"); 
$newDate = date("Y-m-d", strtotime($originalDate)); // This is your mysql compatible date... 

Вы можете использовать $newDate переменную в запросе.

UPDATE `table` SET `DATE_VAR` = '$newDate' WHERE `ID`=160 
+0

О, спасибо, это проще, и это работает. – Neyoh

0

объектно-ориентированный стиль:

echo DateTime::createFromFormat('d/m/Y', $date)->format('Y-m-d'); 

, где находится $date дату в дд/мм/гггг Формат.

Смежные вопросы