2015-04-21 3 views
1

Helo, я получил таблицу daily_report показать столбцы нижеКак рассчитать среднее всего месяц

report_id | peak_generation | pdate | plant_id 

каждая строка представляет собой общую энергию, генерируемую конкретного завода (и они 7 растений в день) , У меня есть лист распространения данных в течение 1 года (jan-dec 2014). Мне нужен запрос для расчета общей «средней» пиковой генерации в месяц. то, что я смог построить с использованием графика слияния, - это общая пиковая генерация в месяц (т. е. общая ось генерации Y по оси X против оси X месяца). как получить среднее значение для всех растений в месяц? ниже приведен код для ясности.

<?php 
//We've included ../Includes/FusionCharts.php and ../Includes/DBConn.php,  which contains 
//functions to help us easily embed the charts and connect to a database. 
include("Includes/FusionCharts.php"); 
include("Includes/DBConn.php"); 
?> 
<HTML> 
<HEAD> 
<TITLE> 
FusionCharts Free - Database Example 
</TITLE> 
<?php 
//You need to include the following JS file, if you intend to embed the chart using JavaScript. 
//Embedding using JavaScripts avoids the "Click to Activate..." issue in Internet Explorer 
//When you make your own charts, make sure that the path to this JS file is correct. Else, you would get JavaScript errors. 
?> 
<SCRIPT LANGUAGE="Javascript" SRC="js/FusionCharts.js"></SCRIPT> 
<style type="text/css"> 
<!-- 
body { 
    font-family: Arial, Helvetica, sans-serif; 
    font-size: 12px; 
} 
.text{ 
    font-family: Arial, Helvetica, sans-serif; 
    font-size: 12px; 
} 
--> 
</style> 
</HEAD> 
<BODY> 


<?php 
//In this example, we show how to connect FusionCharts to a database. 
//For the sake of ease, we've used an MySQL databases containing two 
//tables. 

// Connect to the DB 
$link = connectToDB(); 


// Fetch all factory records 
//$strQuery = "select * from daily_output"; 
//$result = mysql_query($strQuery) or die(mysql_error()); 


//Iterate through each factory 
//if ($result) { 
    // 
     //Now create a second query to get details for this factory 
     $strQuery = "select SUM(peak_generation) as TotOutput, MONTHNAME (pdate) as MONTH FROM daily_report WHERE pdate BETWEEN '2015-01-01' AND '2015-12-30' GROUP BY MONTH (pdate)"; 
     $result = mysql_query($strQuery) or die(mysql_error()); 

     $strXML = "<graph caption='Total Peak Electricity Generated ---- 2015 Month by Month' numberSuffix='MW' xAxisName='Month' yAxisName='MegaWatts' decimalPrecision='0' formatNumberScale='0' yaxismaxvalue='5000'>"; 


     while($row = mysql_fetch_array($result)) { 
     //Generate <set name='..' value='..' />   
     $strXML .= "<set name = '".$row['MONTH']."' value = '".$row['TotOutput']."' />"; 

     //$strXML .="<set name ='" . datePart("d",$row['DAYS']) . "/" . datePart("m",$row['DAYS']) . "' value='" . $row['TotOutput'] . "'/>"; 
     } 
     //Finally, close <graph> element 
     $strXML .= "</graph>"; 
     //Create the chart - Pie 3D Chart with data from $strXML 
     //echo renderChart("charts/FCF_Column3D.swf", "", $strXML, "FactorySum", 650, 450); 
     echo renderChart("charts/FCF_Column3D.swf", "", $strXML, "annual_revenue", 1200, 500); 


     //free the resultset 
     mysql_free_result($result); 


    mysql_close($link); 
?> 




<BR><BR> 
<a href='../NoChart.html' target="_blank">Unable to see the chart above?</a> 
<H5 ><a href='../default.htm'>&laquo; Back to list of examples</a></h5> 


<CENTER></CENTER> 
</BODY> 
</HTML> 
+0

Пожалуйста, вставьте только соответствующий код .. – Naruto

+0

ОК сэр, это было отмечено –

ответ

2

Попробуйте использовать AVG() из MySQL с group by month вы должны получить выход.

вы можете увидеть учебник здесь: here

Смежные вопросы