温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ANSI SQL中的聚合函数怎么用

发布时间:2025-07-24 20:46:19 来源:亿速云 阅读:108 作者:小樊 栏目:数据库

在ANSI SQL中,聚合函数用于对一组值执行计算,并返回单个值。这些函数通常用于SELECT语句的SELECT子句中,以对查询结果集的某些列进行汇总。以下是一些常用的聚合函数及其用法:

1. COUNT()

  • 功能:计算行数。
  • 用法COUNT(*) 计算所有行,COUNT(column_name) 计算指定列非NULL值的数量。
SELECT COUNT(*) FROM employees; -- 计算employees表中的总行数
SELECT COUNT(salary) FROM employees WHERE department_id = 10; -- 计算部门ID为10的员工数量

2. SUM()

  • 功能:计算数值列的总和。
  • 用法SUM(column_name) 计算指定列的所有值的总和。
SELECT SUM(salary) FROM employees; -- 计算所有员工的工资总和

3. AVG()

  • 功能:计算数值列的平均值。
  • 用法AVG(column_name) 计算指定列的平均值。
SELECT AVG(salary) FROM employees; -- 计算所有员工的平均工资

4. MIN()

  • 功能:找出数值列的最小值。
  • 用法MIN(column_name) 找出指定列的最小值。
SELECT MIN(salary) FROM employees; -- 找出所有员工中的最低工资

5. MAX()

  • 功能:找出数值列的最大值。
  • 用法MAX(column_name) 找出指定列的最大值。
SELECT MAX(salary) FROM employees; -- 找出所有员工中的最高工资

6. GROUP BY

  • 功能:将结果集按一个或多个列进行分组。
  • 用法:通常与聚合函数一起使用,以便对每个组执行计算。
SELECT department_id, COUNT(*) AS employee_count
FROM employees
GROUP BY department_id; -- 按部门ID分组,并计算每个部门的员工数量

7. HAVING

  • 功能:过滤聚合函数的结果。
  • 用法:通常与GROUP BY一起使用,以便对分组后的结果进行筛选。
SELECT department_id, COUNT(*) AS employee_count
FROM employees
GROUP BY department_id
HAVING COUNT(*) > 10; -- 只显示员工数量大于10的部门

示例综合查询

SELECT department_id, AVG(salary) AS avg_salary, COUNT(*) AS total_employees
FROM employees
GROUP BY department_id
HAVING AVG(salary) > 5000; -- 按部门分组,计算每个部门的平均工资和员工总数,并筛选出平均工资大于5000的部门

通过这些聚合函数和子句,你可以对数据库中的数据进行复杂的汇总和分析。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI