/ / Query за конвертиране от datetime до дата mysql - sql, mysql, datetime, date

Заявка за конвертиране от datetime до дата mysql - sql, mysql, datetime, date

Опитвам се да получа част от датите на поле за дата. Знам, че мога да го получи с date_format, но това връща низ или "varchar" поле. Как мога да конвертирам резултата до момента, а не като Varchar?

Това е моята заявка за връщане на varchar:

(Select Date_Format(orders.date_purchased,"%m/%d/%Y")) As Date

Опитах няколко комбинации от този въпрос, но не можах да го накарам да работи:

mysql заявка - формат дата на изхода?

Всяка помощ е оценена.

Отговори:

39 за отговор № 1

Опитайте се да го направите като DATE

SELECT CAST(orders.date_purchased AS DATE) AS DATE_PURCHASED

28 за отговор № 2

Използвай Функцията DATE:

SELECT DATE(orders.date_purchased) AS date

3 за отговор № 3

Или решението Cybernate или OMG Ponies ще работи. Основният проблем е, че функцията DATE_FORMAT () връща низ, а не дата. Когато си писал

(Select Date_Format(orders.date_purchased,"%m/%d/%Y")) As Date

Мисля, че по същество искахте MySQL да опитаза да форматирате стойностите в "date_purchased" според този низ на формат и вместо да извиквате тази колона "date_purchased", го наречете "Date". Но тази колона вече няма да съдържа дата, тя ще съдържа низ. (Тъй като Date_Format () връща низ, а не дата.)

Не мисля, че това е това, което искаш да направиш, но това си правиш.

Не обърквайте как изглежда стойността с каква е стойността.


1 за отговор № 4

синтаксис на date_format:

SELECT date_format(date_born, "%m/%d/%Y" ) as my_date FROM date_tbl

"%W %D %M %Y %T"    -> Wednesday 5th May 2004 23:56:25
"%a %b %e %Y %H:%i" -> Wed May 5 2004 23:56
"%m/%d/%Y %T"       -> 05/05/2004 23:56:25
"%d/%m/%Y"          -> 05/05/2004
"%m-%d-%y"          -> 04-08-13

0 за отговор № 5

Виждам многото видове приложения, но считам, че това оформление е по-полезно като референтен инструмент:

SELECT DATE_FORMAT("2004-01-20" ,"%Y-%m-01");

въведете описанието на изображението тук