2021年分组聚合函数详细讲解.docx

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
精品学习资料 名师归纳总结——欢迎下载 学习必备欢迎下载聚合函数总结在实际 SQL应用中,常常需要进行分组聚合,即将查询对象按肯定条件分组,然后对每一 个组进行聚合分析;比如我们常见的一些分组运算需求:求某个部门的薪资总和,薪资平均 值,薪资最大值等等;分组聚合函数也可称之为多行函数,它的输入是多个行构成得一个行集(这个行集可以 是一张表的全部行,也可以是依据某个维度进行分组后的某一组行),而输出都是一个值;1. 分组聚合函数语法以及 SQL语句执行过程SQL中使用分组聚合函数的语法SELECT [column,] group_function(column), ...FROM table 学习必备 欢迎下载 聚合函数总结 在实际 SQL应用中,常常需要进行分组聚合,即将查询对象按肯定条件分组,然后对每一 个组进行聚合分析;比如我们常见的一些分组运算需求:求某个部门的薪资总和,薪资平均 值,薪资最大值等等; 分组聚合函数也可称之为多行函数,它的输入是多个行构成得一个行集(这个行集可以 是一张表的全部行,也可以是依据某个维度进行分组后的某一组行),而输出都是一个值; 1. 分组聚合函数语法以及 SQL语句执行过程 SQL中使用分组聚合函数的语法 SELECT [column,] group_function(column), ... FROM table [WHERE condition] [GROUP BY column][having] [ORDER BY column]; 在 select 语句中使用 group by 子句将行划分成较小的组, 然后,使用聚组函数返回每 一个组的汇总信息,另外,可以使用 having 子句限制返回的结果集; 查询语句的 select 和 group by,having ,Order by 子句是分组聚合函数唯独显现的地方, 在 where 子句中不能使用分组聚合函数; select from salary department_id, sum(salary) employees where 10000 group by department_id having sum order by sum (salary) (salary) 11000 sql 语句执行过程 ( 1) 按select 找到where满意条件的元组形成结果表; 相当于: select from where department_id, salary employees salary 10000 第 1 页,共 22 页 精品学习资料 名师归纳总结——欢迎下载 学习必备欢迎下载( 2)将结果表按 group中指定的列进行分组,该属性列值相等的元组为一组,通常会在每组中作用集函数; (假如 group 指定多个列,先按第一列分组,然后在每个组中再按其次列分组)相当于:selectfromdepartment_id,sum(salary)employeeswheregroup 学习必备 欢迎下载 ( 2) 将结果表按 group中指定的列进行分组,该属性列值相等的元组为一组,通常会 在每组中作用集函数; (假如 group 指定多个列,先按第一列分组,然后在每个组中再按其次 列分组) 相当于: select from department_id, sum(salary) employees where group by salary 10000 department_id ( 3) 假如group子句带 having 短语,就分组聚合后只有满意 having 指定条件的组才输 出; 相当于: select from salary department_id, sum(salary) employees where 10000 group by department_id having sum (salary) 11000 第 2 页,共 22 页 精品学习资料 名师归纳总结——欢迎下载 学习必备 欢迎下载( 4)假如有 order 子句,就将结果表按 order 子句指定的列升序或降序排序;相当于:selectfrom salarydepartment_id,sum(salary)employeeswhere10000group bydepartment_idhaving sumorder by sum(salary) (salary)110002.group by 可选项什么时候可以无:非分组查询中非分组查询中,聚合函数实际上等于将表中全部记录作 学习必备 欢迎下载 ( 4) 假如有 order 子句,就将结果表按 order 子句指定的列升序或降序排序; 相当于: select from salary depa

文档评论(0)

资料杂货铺 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档