SQL聚集函数
来源:互联网 发布:java求质数 编辑:程序博客网 时间:2024/06/10 02:15
0. 简介
聚集函数是以值的一个集合(集或多重集)为输入、返回单个值的函数。
SQL提供了五个固有聚集函数:
- 平均值:avg
- 最小值:min
- 最大值:max
- 总和:sum
- 计数:count
1. 基本聚集
e.g.
select avg(salary)from instructorwhere dept_name = "Computer"
2. 分组聚集
在SQL中可以使用group by子句将聚集函数作用到一组元组集上。group by子句中给出的一个或多个属性是用来构建分组的。在group by子句中的所有属性取值相同的元组将被分在同一组中。
e.g.
select dept_name, avg(salary) as avg_salaryfrom instructorgroup by dept_name;
当SQL查询时使用分组时,一个很重要的事情是需要保证出现在select语句中但没有被聚集的属性只能是出现在group by子句中的那些属性。
3. having子句
有时候,对分组限定条件比对元组限定条件更有用,having子句中的谓词在形成分组后才起作用。
e.g.
select dept_name, avg(salary) as avg_salaryfrom instructorgroup by dept_namehaving avg(salary) > 420000;
4. Attention: 操作序列
包含聚集、group by或having 子句的查询含义可通过下列的操作序列来定义:
1. 与不带聚集的查询情况类似,最先根据from子句来计算出一个关系
2. 如果出现了where子句,where子句中的谓词将应用到from子句的结果关系上
3. 如果出现了group by子句,满足where谓词的元组通过group by 子句形成分组。如果没有group by子句,满足where谓词的整个元组被当成一个分组
4. 如果出现了having子句,它将应用到每个分组上;不满足having子句谓词的分组将被抛弃
5. select子句利用剩下的分组产生出查询结果中的元组,即在每个分组上应用聚集函数来得到单个结果元组
0 0
- SQL聚集函数
- SQL 聚集函数
- [My SQL] SQL聚集函数
- SQL语言之聚集函数
- SQL提供的聚集函数
- SQL学习笔记-聚集函数
- 聚集函数
- 聚集函数
- 聚集函数
- SQL中的数据处理函数(不包括聚集函数)
- T-SQL compute与聚集函数的注意细节
- 一道SQL面试例题 if...else 与聚集函数
- [转]SQL分组查询及聚集函数的使用
- SQL中的汇总数据(其实是聚集函数)
- 小鸦-SQL聚集函数能用在where后吗?
- SQL SERVER聚集索引
- sql聚集排序
- SQL 中聚集索引
- python数据结构学习笔记-2016-10-28-02-使用链表实现稀疏矩阵
- 郝斌的C语言基础 017
- JSON 传值
- Unity协同详解以及与多线程的区别使用
- 蓝牙核心技术概述(三): 蓝牙协议规范(射频、基带链路控制、链路管理)
- SQL聚集函数
- 1072. Gas Station
- HDOJ 4324 Triangle LOVE (三角恋,待解决)
- java synchronized详解
- 安卓小项目之天气预报
- Android开发中的问题总结
- 神奇的“空格”
- C学习笔记
- Java JDBC 进行批量跟新操作