我正在尝试使用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,任何建议。
感谢。
答案 0 :(得分: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 | ADDDATE | ----------------------------------------------------- | Jhon | (null) | Doe | 11/08/2013 |
这是 SQLFiddle 演示
答案 1 :(得分:2)
如果您将其存储为INT,则可能需要使用FROM_UNIXTIME()
SELECT
first_name,
middle_name,
last_name,
DATE_FORMAT(FROM_UNIXTIME(added_date),'%d/%m/%Y') AS AddDate
FROM
profiles
答案 2 :(得分: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
答案 3 :(得分: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