mysql中AVG函数用法_mysql AVG函数教程

来源:这里教程网 时间:2026-02-28 20:34:07 作者:

MySQL中的AVG函数用于计算指定列的平均值,常用于数值类型的字段统计。它会自动忽略NULL值,只对非NULL的值进行计算。

AVG函数基本语法

SELECT AVG(列名) FROM 表名 [WHERE 条件];

例如,有一个名为sales的表,包含id、product和amount字段:

+----+----------+--------+
| id | product  | amount |
+----+----------+--------+
|  1 | A        | 100    |
|  2 | B        | 150    |
|  3 | C        | NULL   |
|  4 | D        | 200    |
+----+----------+--------+

执行以下语句:

SELECT AVG(amount) FROM sales;

结果为:150(即 (100 + 150 + 200) / 3)

结合GROUP BY使用

当需要按某一类别分组计算平均值时,可配合GROUP BY子句。

比如按产品类型统计平均销售额:

SELECT category, AVG(price) AS avg_price FROM products GROUP BY category;

这将返回每个类别的平均价格,结果列命名为avg_price便于查看。

与HAVING配合筛选分组结果

若只想显示平均值高于某个阈值的组,可用HAVING子句:

SELECT department, AVG(salary) AS avg_sal FROM employees GROUP BY department HAVING avg_sal > 5000;

这条语句列出所有平均工资超过5000的部门。

注意事项

AVG只能用于数值型字段,如INT、DECIMAL、FLOAT等。 如果查询结果无有效数据(全为NULL或空表),返回NULL。 使用别名(AS)可提升结果可读性。 在复杂查询中,可嵌套在其他函数或子查询中使用。

基本上就这些。掌握AVG函数能快速完成数据均值分析,是日常查询中非常实用的聚合工具。

相关推荐