我有一个MySQL数据库中的列,其中包含如下形式的日期:
Tue Oct 25 2016
。我试图将其转换为 10/25/2016
的格式。
我进行了一些研究,并尝试了以下方法:
SELECT DATE_FORMAT(Date, '%d/%m/%Y') FROM table;
但它返回了null
任何帮助都将不胜感激。
'YYYY-MM-DD'
),以便从字符串转换,我们必须指定当前日期字符串的格式。在您的情况下,它是'%a %b %d %Y'
。请注意,在格式说明符字符之前需要%
字符。
详细信息:
%a
缩写的星期几名称(Sun到Sat) %b
缩写的月份名称(Jan到Dec) %d
作为数字值的月中日期(01到31) %Y
数字值的年份,4位数现在,您可以利用DATE_FORMAT函数将MySQL日期转换为所需的日期字符串格式。在您的情况下,它将是:'%m/%d/%Y'
详细信息:
%d
表示月份中的日期,数字表示(01到31)%m
表示月份,数字表示(00到12)%Y
表示年份,4位数字表示请尝试以下查询:
SELECT DATE_FORMAT(STR_TO_DATE(Date, '%a %b %d %Y'), '%m/%d/%Y')
FROM table;
可以在此处查看可用格式说明符的完整列表:https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html#function_date-format
Tue Oct 25 2016
时,它是字符串类型varchar
或char
中的一种。 - Raymond Nijland