对查询结果集中的指定列进行统计并输出统计值使用集合函数_第1页
对查询结果集中的指定列进行统计并输出统计值使用集合函数_第2页
对查询结果集中的指定列进行统计并输出统计值使用集合函数_第3页
对查询结果集中的指定列进行统计并输出统计值使用集合函数_第4页
对查询结果集中的指定列进行统计并输出统计值使用集合函数_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

集合函数用于对查询结果集中的指定列进行统计,并输出统计值。常用的集合函数如下表所示。使用集合函数5.2统计查询

常用的集合函数。集

数功

述COUNT([DISTINCT|ALL]列表达式|*)计算一列中值的个数。COUNT(*)返回行数,包括含有空值的行,不能与DISTINCT一起使用SUM([DISTINCT|ALL]列表达式)计算一列数据的总和(此列为数值型)AVG([DISTINCT|ALL]列表达式)计算一列数据的平均值(此列为数值型)MAX([DISTINCT|ALL]列表达式)计算一列数据的最大值MIN([DISTINCT|ALL]列表达式)计算一列数据的最小值5.2统计查询

查询studentinfo表,统计学生总人数。SELECTCOUNT(*)AS学生总人数

FROMstudentinfo;5.2统计查询实例5-17

查询elective表,统计选修了c003号课程的学生人数、最高成绩、最低成绩、总成绩和平均成绩。SELECTCOUNT(*)AS学生人数,SUM(score)AS总成绩,AVG(score)AS平均成绩,MAX(score)AS最高分,MIN(score)AS最低分FROMelectiveWHEREcno='c003';5.2统计查询实例5-18

GROUPBY子句用于对查询结果集按指定的列的值进行分组,列值相同的放在一组。集合函数和GROUPBY子句配合使用,将对查询结果集进行分组统计使用GROUPBY子句5.2统计查询其语法格式如下:

SELECT[ALL|DISTINCT]要查询的内容FROM表名[WHERE条件表达式]GROUPBY列名列表[HAVING条件表达式];5.1简单查询

使用GROUPBY子句进行分组统计时,SELECT子句中的列表达式中所包含的列只能是如下两种情况:应用了集合函数。1未应用集合函数的列必须包含在GROUPBY子句中2说明5.2统计查询

查询studentinfo表,分别统计男女生人数。SELECTsgender,COUNT(*)AS人数FROMstudentinfoGROUPBYsgender;5.2统计查询实例5-19

查询elective表,统计输出每个学生所选课程数目及平均分。SELECTsno,COUNT(cno)AS选修课程数目,AVG(score)AS平均分FROMelectiveGROUPBYsno;5.2统计查询实例5-20

查询elective表,统计输出每门课程的所选学生人数及最高分。SELECTcno,COUNT(sno)AS选修的学生人数,MAX(score)AS最高分FROMelectiveGROUPBYcno;5.2统计查询实例5-21

GROUPBY子句常和HAVING子句配合使用。HAVING子句只能出现在GROUPBY子句后,用于将分组后的结果进行条件筛选。DELETE都是进行条件筛选功能的子句,DELETE句和HAVING子区的区别表现在:WHERE子句设置的查询筛选条件在GROUPBY子句之前发生作用,并且条件中不能使用集合函数。1HAVING子句设置的筛选条件在GROUPBY子句之后发生作用,并且条件中允许使用集合函数。25.2统计查询

注意:当一个语句中同时出现了WHERE子句,GROUPBY子句和HAVING子句,SQL的执行顺序如下:执行WHERE子句,从数据表中选取满足条件的数据行。1由GROUPBY子句对选取的行进行分组。2执行聚合函数。3执行HAVING子句,选取满足条件的分组。45.2统计查询

查询elective表中每门课成绩都在70~90之间的学生的学号。SELECTsnoAS每门成绩都在7

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论