TIME_FORMAT(HOUR(`dPostTime`),'%l%p')返回相同的值

时间:2010-10-15 18:55:27

标签: php mysql

以下是我的疑问:

SELECT COUNT(*), TIME_FORMAT(HOUR(`dPostTime`), '%l %p') AS `hr`, HOUR(`dPostTime`) AS 'hour' FROM `tblQA` WHERE dPostDateTime >= '$_POST[startDate]' AND dPostDateTime <= '$_POST[endDate]' AND dPostTime <> '0000-00-00 00:00:00' GROUP BY `hour`"

我通过php while循环将数据发布到表中。它将在上午12点返回,而不是凌晨1点,凌晨2点,凌晨3点等......

如果我只使用HOUR('dPostTime')它会正确显示,但我想要格式化日期而不是只返回一个值。

谢谢!

1 个答案:

答案 0 :(得分:0)

您应该直接在TIME_FORMAT中使用dPostTime,例如:

TIME_FORMAT(`dPostTime`, '%l %p') AS `hr`