使用php从mysql中选择年份时查找平均值(AVG)

时间:2017-08-21 13:03:54

标签: php mysql average

我有一张表,其中包含2017年1月至12月的年度12个值。

麻烦的是,我们只在八月和我现在的代码(2016年正常工作,因为所有值都不为空)继续将值除以12 ..当它需要为8(8月)然后9为9月等。

任何想法如何得到我需要的平均值而不是12个月的平均值。

$sql = "SELECT ROUND(AVG(valuations),2) AS value_sum FROM office_figures2016 where date_figures =2017";

$result = $conn->query($sql);


if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {


        echo "<td> " . $row["value_sum"]."</td>";

3 个答案:

答案 0 :(得分:1)

如果您没有任何属于未来日期的数据,那么您可以使用以下查询来获取运行平均值:

$sql = "SELECT ROUND(SUM(valuations)/MONTH(NOW()), 2) AS value_sum 
    FROM office_figures2016 
    WHERE date_figures =2017";

答案 1 :(得分:1)

为什么不从您的请求中排除java.io.IOException: com.amazon.ws.emr.hadoop.fs.shaded.com.amazonaws.services.s3.model.AmazonS3Exception: The operation is not valid for the object's storage class (Service: Amazon S3; Status Code: 403; Error Code: InvalidObjectState; Request ID: C444D508B6042138) 条目?

reduce(_ union _)

答案 2 :(得分:0)

这对我有用。似乎这与null有关,而不是null。数据库没有看到我的空单元格为空,因此保持返回12行而不是所需的6.

SELECT * FROM office_figures 2016 WHERE date_figures = 2017 AND firsts IS NOT NULL AND firsts!=''

感谢David Alves和ks john谁不知道我的细胞不是空的。