MySQL聚合函数是用于对一组值执行计算并返回单个值的函数,它们通常与SELECT语句一起使用,以对数据进行汇总和分析,MySQL提供了许多聚合函数,包括COUNT、SUM、AVG、MIN、MAX等。
1、COUNT函数
COUNT函数用于计算表中的记录数,它可以接受一个可选参数,用于指定要计算的列,如果没有指定列,则计算所有记录的数量。
语法:
SELECT COUNT(*) FROM table_name; SELECT COUNT(column_name) FROM table_name;
示例:
-计算表中的所有记录数 SELECT COUNT(*) FROM employees; -计算特定列的记录数 SELECT COUNT(department_id) FROM employees;
2、SUM函数
SUM函数用于计算指定列的总和,它可以接受一个可选参数,用于指定要计算的列,如果没有指定列,则计算所有列的总和。
语法:
SELECT SUM(column_name) FROM table_name;
示例:
-计算特定列的总和 SELECT SUM(salary) FROM employees;
3、AVG函数
AVG函数用于计算指定列的平均值,它可以接受一个可选参数,用于指定要计算的列,如果没有指定列,则计算所有列的平均值。
语法:
SELECT AVG(column_name) FROM table_name;
示例:
-计算特定列的平均值 SELECT AVG(salary) FROM employees;
4、MIN函数
MIN函数用于计算指定列的最小值,它可以接受一个可选参数,用于指定要计算的列,如果没有指定列,则计算所有列的最小值。
语法:
SELECT MIN(column_name) FROM table_name;
示例:
-计算特定列的最小值 SELECT MIN(salary) FROM employees;
5、MAX函数
MAX函数用于计算指定列的最大值,它可以接受一个可选参数,用于指定要计算的列,如果没有指定列,则计算所有列的最大值。
语法:
SELECT MAX(column_name) FROM table_name;
示例:
-计算特定列的最大值 SELECT MAX(salary) FROM employees;
6、GROUP BY子句与聚合函数的结合使用
GROUP BY子句可以与聚合函数结合使用,以便对分组后的数据进行汇总和分析,可以使用GROUP BY子句将员工按部门分组,然后使用聚合函数计算每个部门的平均工资、最高工资和最低工资。
语法:
SELECT column_name, AVG(column_name), MAX(column_name), MIN(column_name) FROM table_name GROUP BY column_name;
示例:
-按部门分组,计算每个部门的平均工资、最高工资和最低工资 SELECT department_id, AVG(salary), MAX(salary), MIN(salary) FROM employees GROUP BY department_id;
7、HAVING子句与聚合函数的结合使用
HAVING子句可以与聚合函数结合使用,以便对分组后的数据进行筛选,可以使用HAVING子句筛选出平均工资超过5000的部门,注意,HAVING子句不能单独使用,必须与GROUP BY子句一起使用。
语法:
SELECT column_name, AVG(column_name), MAX(column_name), MIN(column_name) FROM table_name GROUP BY column_name HAVING AVG(column_name) > value;
示例:
-按部门分组,筛选出平均工资超过5000的部门,并计算每个部门的平均工资、最高工资和最低工资 SELECT department_id, AVG(salary), MAX(salary), MIN(salary) FROM employees GROUP BY department_id HAVING AVG(salary) > 5000;
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/337037.html