MySQL AVG函数


本MySQL教程通过语法和示例说明了如何使用MySQL AVG函数。

描述

MySQL AVG函数用于计算平均值。

语法

MySQL中AVG函数的语法为:

1
2
3
SELECT AVG(aggregate_expression)
FROM tables
[WHERE conditions];

将结果按一列或多列分组时,AVG函数的语法为:

1
2
3
4
5
SELECT expression1, expression2, ... expression_n,
AVG(aggregate_expression)
FROM tables
[WHERE conditions]
GROUP BY expression1, expression2, ... expression_n;

expression1,expression2,... expression_n未封装在AVG函数中的表达式必须包含在SQL语句后面的GROUP BY子句中。
aggregate_expression要求平均值的列或者表达式。

MySQL AVG函数示例

示例-求单列的平均值

求薪水高于$15,000的员工的平均薪水:

1
2
3
SELECT AVG(salary) AS "平均薪水"
FROM employees
WHERE salary > 15000;

示例-在计算平均值时使用DISTINCT排除相同的数字

1
2
3
SELECT AVG(DISTINCT salary) AS "Avg Salary"
FROM employees
WHERE salary > 15000;

如果有两个薪水都是20,000美元,那么AVG功能中将只使用其中一个。

示例-求平均值中的表达式使用公式

函数中的表达式还可以是公式:

1
2
SELECT AVG(sales * 0.10) AS "平均税金"
FROM orders;

示例-使用GROUP BY进行分组后再求平均值

计算每个部门的平均销售额

1
2
3
SELECT department AS "部门", AVG(sales) AS "平均销售额"
FROM order_details
GROUP BY department;


原文链接:https://codingdict.com/