模块 2 · 第 4 课(共 4)课程中的8/57~8 min
模块课程(4/4)
计数和汇总:COUNT、AVG、MAX
到目前为止,每个 SELECT 为表的每一行返回一行。
聚合函数执行相反的操作:它们读取许多行并返回
总结它们的单个值。
最常见的是:
COUNT(*)— 有多少行。AVG(column)— 数值的平均值(忽略NULL)。MAX(column)/MIN(column)— 最大值/最小值。SUM(column)— 数值之和。
SQL
SELECT COUNT(*),
AVG(salary),
MAX(salary)
FROM employees;当聚合应用于整个表时(没有 GROUP BY,这
您将在下一个模块中看到)结果是单行,无论如何
源表有多少行。
与 WHERE 结合
WHERE 过滤器在聚合之前:聚合仅适用于行
通过过滤器的。
SQL
-- Stipendio medio dei soli dipendenti del Marketing (department_id = 3):
SELECT AVG(salary)
FROM employees
WHERE department_id = 3;尝试一下
锻炼#sql.m2.l4.e1
尝试:0加载中...
自 2020 年 1 月 1 日以来已雇用了多少员工?返回单个数字(一行,一列)。
正在加载编辑器...
显示提示
计算行数的函数是 COUNT(*)。
3 次尝试后可用的解决方案
复习练习
锻炼#sql.m2.l4.e2
尝试:0加载中...
在单个查询中,计算营销部门 (department_id = 3) 员工的平均 (AVG) 和最高 (MAX) 工资。一行,两列。
正在加载编辑器...
显示提示
您可以将多个聚合函数放在同一个 SELECT 中,并用逗号分隔。
3 次尝试后可用的解决方案