6

我正在尝试使用 MySQL DATE_FORMAT 格式化日期。我的查询是

SELECT first_name, middle_name, last_name, DATE_FORMAT(added_date,'%d/%m/%Y') AS AddDate
FROM profiles.

added_date 是配置文件表上的日期字段,当我运行该查询时,它会为 AddDate 带来 Null,任何建议。

谢谢。

4

4 回答 4

2

根据您的评论,您可能正在寻找这个

SELECT first_name, middle_name, last_name, 
       DATE_FORMAT(STR_TO_DATE(added_date, '%d-%m-%Y %h:%i:%s %p'),'%d/%m/%Y') AS AddDate
FROM profiles

样本输出:

| FIRST_NAME | MIDDLE_NAME | LAST_NAME | 添加日期 |
-------------------------------------------------- ---
| 约翰 | (空) | 能源部 | 2013 年 11 月 8 日 |

这是SQLFiddle演示

于 2013-08-11T08:00:16.283 回答
2

如果您将其存储为 INT,您可能需要使用 FROM_UNIXTIME()

SELECT 
  first_name, 
  middle_name, 
  last_name, 
  DATE_FORMAT(FROM_UNIXTIME(added_date),'%d/%m/%Y') AS AddDate
FROM 
  profiles
于 2013-08-11T08:04:02.563 回答
0

使用STR_TO_DATE()尝试类似的事情:-

SELECT first_name, middle_name, last_name, DATE_FORMAT(STR_TO_DATE(added_date, '%d-%m-%Y %h:%i:%s A'),'%d/%m/%Y') AS AddDate
FROM profiles
于 2013-08-11T07:42:07.403 回答
0

查找已编辑的查询

    SELECT first_name, middle_name, last_name, 
    DATE_FORMAT(STR_TO_DATE(added_date, '%d-%m-%Y %h:%i:%s A'),'%d/%m/%Y') AS AddDate
    FROM profiles

参考问题链接

于 2013-08-11T07:48:28.257 回答