Php mysql在两年内每周分组

Php mysql在两年内每周分组,php,mysql,Php,Mysql,嗨,我正在写一个查询,以获取面积图的结果。我有两年的数据。我使用mysql group by date来获取每日结果,但是当我使用group by week时,我找不到一种方法来分离两年的每周数据,因为它返回的是像4,5这样的周数 我的代码是 $results=mysql_query("SELECT SUM(rate) as rate, week(rdate) as rdate FROM cpustats WHERE server_id='$server_id'

嗨,我正在写一个查询,以获取面积图的结果。我有两年的数据。我使用mysql group by date来获取每日结果,但是当我使用group by week时,我找不到一种方法来分离两年的每周数据,因为它返回的是像4,5这样的周数

我的代码是

     $results=mysql_query("SELECT SUM(rate) as rate, week(rdate) as rdate 
    FROM cpustats 
    WHERE server_id='$server_id' 
    GROUP BY week(rdate)") or die(mysql_error());
    $data3='';
    $data4='';
    while ($row = mysql_fetch_array($results)) {
        //one day has lots of records i devide that for get average
       $rk=mysql_query("SELECT rate as rdate FROM cpustats 
    WHERE server_id='$server_id' 
    AND week(rdate)='".$row['rdate']."'") or die(mysql_error());
       $nr=mysql_num_rows($rk);
       //here has issue which shows sum of two years same week data
       $usage=round($row['rate']/$nr,2);

       //tfunction return start and end of week by passing week number
       $week=getStartAndEndDate($row['rdate']);

       $data3[] = "'".$week."'";
       $data4[] = "$usage";

}

有人能帮我获得两年的每周数据吗?请

您还需要按年份添加分组,以便将结果按周和年度分组

SELECT 
SUM(rate) as rate,
WEEK(rdate) as rdate ,
YEAR(rdate) as rdate_year
FROM cpustats 
WHERE server_id='$server_id' 
GROUP BY YEAR(rdate),WEEK(rdate)