这是我的查询:
$chart_result = mysql_query("SELECT *
FROM (SELECT DATE(timestamp) AS ts,
YEAR(timestamp) AS year,
MONTH(timestamp) AS month,
DAY(timestamp) AS day,
SUM(paymentgross) AS sales
FROM stats_ans_1
GROUP BY DATE(timestamp) DESC
LIMIT 10
) AS TBL
GROUP BY ts");
这是时间戳:
2012-09-12 19:45:23
MONTH(timestamp) 绝对确定时间戳是 10 月而不是 9 月 - 这显然是错误的。怜悯我可怜的脑细胞!
最佳答案
您可以使用DATE_FORMAT以字符串格式返回月份的函数:
SELECT DATE_FORMAT('2012-09-12 19:45:23', '%M') AS `month`;
此外,您不需要使用 GROUP BY
两次,请尝试以下查询:
SELECT DATE(timestamp) AS ts,
YEAR(timestamp) AS year,
MONTH(timestamp) AS month,
DAY(timestamp) AS day,
SUM(paymentgross) AS sales
FROM stats_ans_1
GROUP BY DATE(timestamp) DESC
LIMIT 10;
关于php - DATE(时间戳)返回错误的月份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12406840/