2013-01-25 47 views
2

我有一张表格,里面填写了销售汽车的数据。MySQL数据汇总平均值失败

我想得到每日平均数,所以我使用聚合和下面的函数。

SELECT 
     DAYOFMONTH(TIMESTAMP) AS DAY, 
     MONTH(TIMESTAMP) AS MONTH, 
     AVG(number_sold) AS sold, 
     AVG(amount_earned) AS earned, 
     AVG(wages_spent) AS wages 
FROM cardata 
GROUP BY DAYOFMONTH(TIMESTAMP) 
ORDER BY TIMESTAMP DESC 
LIMIT 0, 12; 

我应该得到12行,每天有1行。 12行返回,但每天都会出现问题。 2月份我只获得第5天和第8天。

我的陈述有问题吗?

请帮忙吗?

回答

1

我相信GROUPBY并不在这里。

尝试:

GROUP BY DAYOFMONTH(TIMESTAMP) , MONTH(TIMESTAMP) 

这应该组你怎么需要它的数据。

或者你可以这样做:

SELECT 
    DATE_FORMAT (TIMESTAMP, '%m/%d') AS DAY, 
    ... 
FROM cardata 
GROUP BY DAY 
ORDER BY TIMESTAMP DESC 
LIMIT 0, 12 

但固定GROUPBY是应该修复它最主要的。

+0

嘿感谢团体修复它,没有意识到我可以做到这一点 –