2014-02-23 66 views
0

你好我写一个查询得到结果的区域chart.i有两年的数据。我用mysql按日期得到每日的结果,但是当我按周使用组becoz它与周数返回类似4,5mysql group by two years for two years

icannot找到一种方法来单独2年每周DATAS我的代码是

 $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"; 

} 

谁能帮助我获得单独每周DATAS两年请

回答

0

您还需要通过一年来添加组,以便将组结果一周和一年明智

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) 
+1

感谢工作完美 – user2873965