4.3 统计查询 课件(共18张PPT)《 数据库技术及应用(SQL Server 2019)》同步教学(机械工业出版社)

资源下载
  1. 二一教育资源

4.3 统计查询 课件(共18张PPT)《 数据库技术及应用(SQL Server 2019)》同步教学(机械工业出版社)

资源简介

(共18张PPT)
4.3 统计查询
提纲
提纲
聚合函数的使用
GROUP BY子句的使用
HAVING子句的使用
任务描述
1.聚合函数的使用
1)查询学生的学分情况,显示学生的已修最高学分、最低学分。
2)查询学生的学分情况,统计学号为“18011101”所有课的总得分和平均分。
3)查询学生的学生人数情况,统计软件技术专业的学生人数。
2. GROUP BY子句的使用
查询Student学生表中的男生人数、女生人数。
3. HAVING 子句的使用
查询至少选修了两门课程的学生的学号。
聚合函数:对一组值执行计算并返回单一的值,经常与SELECT语句的 GROUP BY 子句一同使用。
任务准备
GROUP BY 子句用于对表或视图中的数据按字段进行分组
GROUP BY 子句格式为:
GROUP BY 字段[,字段2[,字段3…]]
任务准备
在使用GROUP BY子句进行的分组查询后,如果要输出满足一定条件的分组,则需要使用HAVING关键字。
HAVING子句的格式为:
HAVING 查找条件
任务准备
HAVING子句和WHERE子句有什么区别?
使用过HAVING子句,是否还能使用WHERE子句?
任务准备
”读书使人充实,思考使人深邃”,——富兰克林
WHERE子句从数据源中去掉不符合其搜索条件的数据
GROUP BY子句搜集数据行到各个组中,统计函数为各个组计算统计值
HAVING子句去掉不符合其组搜索条件的各组数据行
WHERE
GROUP BY
HAVING
任务准备
1. 查询学生的学分情况,显示学生的已修最高学分、最低学分。
任务演示
SELECT MAX(SRcredit) AS 最高学分,MIN(SRcredit) AS 最低学分
FROM Student
MAX(SRcredit)统计最高学分
MIN(SRcredit)统计最低学分
2. 统计学号为“18011101”所有课的总得分和平均分
任务演示
SELECT SUM(Score) AS 总得分,AVG(Score) AS 平均分
FROM Study
WHERE SID='18011101'
SUM(Score):统计成绩的总和
3. 统计学号为“18011101”所有课的总得分和平均分
任务演示
SELECT SUM(Score) AS 总得分,AVG(Score) AS 平均分
FROM Study
WHERE SID='18011101'
SUM(Score):统计成绩的总和
4. 统计软件技术专业的学生人数
任务演示
SELECT COUNT(SMajor) AS 软件技术专业人数
FROM Student
WHERE SMajor='软件技术'
COUNT(SMajor):统计专业的人数。
5. 查询Student学生表中的男生人数、女生人数。(COUNT()函数)
任务演示
SELECT SSex AS 性别,COUNT(SSex) AS 人数
FROM Student
GROUP BY SSex
COUNT:用于统计满足SELECT语句中指定条件的记录个数。
GROUP BY:用于指定需要分组的列,多个列用逗号隔开。除使用聚合函数外,查询的列必须与GROUP BY后面的列名一致。
6. 查询Student学生表中的男生人数、女生人数(GROUP BY子句)。
任务演示
SELECT SSex AS 性别,COUNT(SSex) AS 人数
FROM Student
GROUP BY SSex
COUNT:用于统计满足SELECT语句中指定条件的记录个数。
GROUP BY:用于指定需要分组的列,多个列用逗号隔开。除使用聚合函数外,查询的列必须与GROUP BY后面的列名一致。
7. 查询至少选修了两门课程的学生的学号(HAVING子句)。
任务演示
SELECT SID
FROM Study
GROUP BY SID
HAVING COUNT(SID)>=2
HAVING:用于限定统计查询的条件。
COUNT(SID):分组后,统计学号出现的次数,如果出现2次,说明该学生选修了两门课程。
思考:HAVING子句和WHERE子句有什么区别
任务训练
1)按照任务实施过程的要求完成各子任务。
2)查询读者的最高违规次数。
3)统计有借阅记录的人数。
4)统计读者表中各专业的男生和女生人数。
5)统计至少借阅过两次的读者号。
6)统计各种图书的借阅人数。
THANKS
汇报人姓名

展开更多......

收起↑

资源预览