2011-06-28 24 views
0

我想收集有关我正在使用的数据库的统计信息,我想知道每个月在数据库中有多少条目,我因为时间范围比一年,例如它始于2010年2月,目前结束。按月计算mysql数据库中的条目

现在我试图做这样的事情:

startDate = `mysql -h <hostname> -u root -D build -e "select MIN(submittime) ' 
Start Date' from builds;"` 

endDate = `mysql -h <hostname> -u root -D build -e "select MAX(submittime) 'En 
d Date' from builds;"` 

months = [] 
months.push(`mysql -h <hostname> -u root -D build -e "select count(id) 
from builds where submittime >= startDate 
and submittime <= date_add(startDate, interval 30 DAY);"` 

等等 任何帮助/意见将是巨大的。 谢谢。

回答

2

添加GROUP BY MONTH(submittime)。

1

如何像:

SELECT COUNT(id), CONCAT(MONTH(submittime),'-',YEAR(submittime)) AS start 
    FROM builds GROUP BY start 

,或者更简单地说

SELECT COUNT(id), submittime 
    FROM builds GROUP BY YEAR(submittime), MONTH(submittime) 
+0

这个统计项的总数,然后只给了我最早的submittime。 359,'2010-05-27 10:48:36' –

+0

对不起...使用'开始日期'发生错误...应该使用'submittime'...发布更新。 – Dancrumb

+0

这也很好,我希望我可以标记两个答案。 :| –