Php 获取从定义月份到当前月份的每月数据

Php 获取从定义月份到当前月份的每月数据,php,mysql,Php,Mysql,我需要提供自特定月份和年份(例如2009年11月)以来mysql数据库使用带宽的月度报告。我可以使用以下查询输出任何特定月份的正确数据 $query='SELECT SUM(radacct.AcctInputOctets) AS uploads,SUM(radacct.AcctOutputOctets) AS downloads FROM radacct WHERE radacct.AcctStartTime BETWEEN "2010-11-00" AND "2010-12-00"';

我需要提供自特定月份和年份(例如2009年11月)以来mysql数据库使用带宽的月度报告。我可以使用以下查询输出任何特定月份的正确数据

$query='SELECT SUM(radacct.AcctInputOctets) AS uploads,SUM(radacct.AcctOutputOctets) AS downloads FROM radacct WHERE radacct.AcctStartTime BETWEEN "2010-11-00" AND "2010-12-00"';
    $result = mysql_query($query);
    $row = mysql_fetch_array($result);
    echo '<tr><td>December</td><td>'.$uploads.'</td><td>'.$downloads.'</td></tr>';
$query=”选择SUM(radacct.AcctInputOctets)作为上传,选择SUM(radacct.acctutputoctets)作为从radacct下载,其中radacct.AcctStartTime介于“2010-11-00”和“2010-12-00”之间;
$result=mysql\u query($query);
$row=mysql\u fetch\u数组($result);
echo'December.$uploads.'.$downloads.';

我需要将其放入一个循环中,该循环从定义的月份开始,即$start='2009-11-00',并打印当前月份之前每个月的记录。不管我怎么做,我都不能让它工作

添加分组参数:

SELECT year(radacct.AcctStartTime), month(radacct.AcctStartTime), ...
FROM ...
WHERE radacct.AcctStartTime > '2010-09-00'
GROUP BY year(radacct.AcctStartTime), month(radacct.AcctStartTime)

这将为您提供自2010年9月以来数据库中至少有一个条目的每年/每月的汇总数据。

您说“无论您尝试了什么”,您尝试了什么?这似乎是一个相当简单的循环,在开始日期和结束日期中添加一个月,直到指定日期为止,就足够了。首先,您需要一些月生成器,并计算要查询的月数(N次)。。然后它只是从0到N的循环,生成月份,发送查询并添加结果。。不太擅长php,所以只需要想法。这是一个非常优雅的解决方案,速度也比预期快得多。