我有一个 mysql 查询,它有一个格式为“timestamp”的 CreationDate 列。示例:
2013-03-27 18:32:45
我希望 sql 查询以这种方式格式化它(12 小时格式,带秒):
Friday 3/28/2013 12:52:34 PM
我想在 sql 级别处理这个问题,而不是 php 或 .js 等。
查询:
SELECT a.ID, a.CreationDate, a.Content, a.Type, u.Nickname
FROM Announcements a
INNER JOIN Accounts u ON a.FromAccountID = u.AccountID
WHERE a.Status = '1' AND u.Status = '1'
ORDER BY a.ID DESC
最佳答案
您将要使用 DATE_FORMAT
:
SELECT a.ID,
date_format(a.CreationDate, '%W %m/%d/%Y %l:%i %p') CreationDate,
a.Content,
a.Type,
u.Nickname
FROM Announcements a
INNER JOIN Accounts u
ON a.FromAccountID = u.AccountID
WHERE a.Status = '1'
AND u.Status = '1'
ORDER BY a.ID DESC
MySQL 文档将显示您将使用哪些说明符来获取所需的格式(参见 SQL Demo)。
如果你想保持秒数,那么你将使用:
date_format(a.CreationDate, '%W %m/%d/%Y %r')
关于mysql - 来自 MYSQL 查询的格式时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15690575/