我如何计算一个月的平均总数

时间:2015-04-21 09:25:01

标签: javascript php mysql fusioncharts

Helo,我有表daily_report显示下面的列

report_id | peak_generation | pdate | plant_id

每行代表特定植物产生的总能量(它们是每天7株植物)。我有1年的数据电子表格(2014年1月 - 2014年)。我需要一个查询来绘制每月总“平均”峰值产生。我能够使用融合图绘制的是每月的总峰值生成(即总峰值生成Y轴与月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>

1 个答案:

答案 0 :(得分:2)

尝试使用AVG() mysql和group by month,你应该得到输出。

您可以在此处查看教程:here