📜  PHP-My SQL avg() 聚合函数(1)

📅  最后修改于: 2023-12-03 15:18:32.621000             🧑  作者: Mango

PHP-MySQL avg() 聚合函数

在 MySQL 中,我们可以使用 avg() 函数来计算一组数值的平均值。通常用于统计分析、财务数据等相关领域。

语法
SELECT AVG(column_name) FROM table_name WHERE condition;

参数说明:

  • column_name:要计算平均值的列名。
  • table_name:要计算平均值的表名。
  • condition:可选,WHERE 子句限制查询的行。
示例

假设有以下订单数据:

| id | customer | amount | |---|---|---| | 1 | Alice | 10 | | 2 | Bob | 20 | | 3 | Alice | 30 | | 4 | Bob | 40 |

要计算出所有订单金额的平均值,可以使用以下 SQL 语句:

SELECT AVG(amount) FROM orders;

输出结果为:

AVG(amount)
-----------
       25.00
完整示例
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接是否成功
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

// 执行查询
$sql = "SELECT AVG(amount) FROM orders";
$result = $conn->query($sql);

// 输出结果
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo "平均订单金额为: " . $row["AVG(amount)"];
    }
} else {
    echo "查询结果为空";
}

// 关闭连接
$conn->close();
?>
注意事项
  • avg() 函数只能应用于数值类型的列,如 INT、FLOAT 和 DECIMAL。
  • 如果计算 NULL 值的平均数,avg() 函数会忽略这些空值。
  • avg() 函数也可以和其他聚合函数一起使用,如 SUM、COUNT、MAX 和 MIN,以便根据需要进行多种分析。
  • avg() 函数还可以根据业务需求,结合 GROUP BY 子句,对各组数据进行分组计算。
  • 在查询期间,如果出现 DIVISION BY ZERO 的情况,MySQL 将返回错误。