数据库学习笔记系列(5)——分组查询
来源:互联网 发布:origin for mac 破解 编辑:程序博客网 时间:2024/06/05 18:03
数据库中的分组查询可以通过group by命令来实现。
group by子句可以将查询结果表的各行按一列或多列取值相等的原则(一组的数据中它们被分组的字段一定是相同的)。
对查询结果分组的目的是为了细化集函数的作用对象。如果未对查询结果分组,集函数将作用于整个参训结果,即整个查询结果只有一个函数值。否则,集函数将作用于每一个组,即每一组都有一个函数值。
原始表的情况:
1. 查询每个课程人的均分
我们可以看出group by主要在精细集函数的作用对象。
如果分组后还要求按一定的条件对这些组进行筛选,最终只输出满足满足指定条件的组,则可以使用having短语指定筛选条件。
2. 选课人数大于2人的每个课程的均分
注意,having之后的筛选条件最好是和分组相关的字段。如果不是相关的字段,就很有可能出错。
例如上例中分组的依据只算是course, 而count的也是course的人数,但是假如我们换成性别ssex,那么就会出现下面的错误:
我们发现:女生选择的课程不是只有C语言,但是查询的结果就只有一条数据。所以我们在使用分组查询的时候要注意这点。
0 0
- 数据库学习笔记系列(5)——分组查询
- 数据库学习笔记系列(7)——连接查询
- 数据库学习笔记系列(8)——嵌套查询
- oracle数据库学习笔记(二)之分组统计查询
- 数据库学习笔记(六)-联接查询和分组查询
- 【Solr4.7.0学习笔记】系列之一:Facet分组查询
- 数据库学习笔记系列(4)——单表查询_1
- 数据库学习笔记系列(6)——等值与非等值连接查询
- Oracle学习笔记2—分组/子查询
- mysql 数据库笔记-基本查询(分组、聚合函数)
- SQL Server — 复杂查询 分组查询—— 学习笔记
- 数据库(关联查询 分组)
- 数据库学习笔记系列(2)——索引_1
- 数据库学习笔记系列(3)——索引_2
- 数据库学习——数据分组
- 数据库学习—高级分组(聚合)函数
- SQL Server学习笔记(一)【认识SQL Server查询及分组嵌套查询】
- Oracle分组查询5——实例
- 用JavaScript打印九九乘法表
- [实习] 2015/4/22 腾讯暑期实习招聘
- 【linux】 Makefile之make menuconfig /uImage
- 【2015/4/22】jsp学习笔记1---简述j2ee技术和初始jsp
- C语言快速排序算法及代码
- 数据库学习笔记系列(5)——分组查询
- android 手动设置时间 过期闹钟被触发
- 多核浏览器选择默认模式
- POJ3080 Blue Jeans 最长公共子串
- SQL统计查询 两次group
- Homework2-Introductoin to MATLAB
- XP桌面背景文件路径
- VS2010+QT5编程之解决中文乱码及一些编译未通过问题
- 非对称密钥-数字签名及数字证书