数据库查询语言(DML)练习:score成绩表查询
需积分: 37 150 浏览量
更新于2024-08-23
收藏 261KB PPT 举报
本资源是一份关于数据库查询语言(DML)练习的资料,主要涉及SQL语句的应用。其中提供了4个数据表:student(学生信息表),teacher(老师信息表),course(课程表),以及score(成绩表)。每个表包含特定的列,如student表包括学生学号sno、姓名sname、性别sex、出生日期birthday和班级class等。score表则记录了学生的课程号cno、成绩degree。练习中包含了多个SQL查询任务,旨在检验对数据表的操作能力,如查询特定列、去重、排序、聚合函数应用等。
以下是根据提供的练习内容生成的相关知识点:
1. 查询特定列:使用SELECT语句可以查询表中的指定列。例如,查询student表中所有记录的sname、sex和class列,语句为:`SELECT sname, sex, class FROM student;`
2. 去重查询:使用DISTINCT关键字去除重复项。显示教师不重复的depart列,语句为:`SELECT DISTINCT depart FROM teacher;`
3. 显示全部记录:不使用任何筛选条件时,SELECT语句会显示表中的所有记录。例如,显示student表的所有记录:`SELECT * FROM student;`
4. 范围查询:利用BETWEEN操作符可查询某个范围内的数据。查询score表中成绩在60到80之间的记录,语句为:`SELECT * FROM score WHERE degree BETWEEN 60 AND 80;`
5. IN操作符:查询满足多个特定值之一的记录。显示成绩为85、86或88的score表记录,语句为:`SELECT * FROM score WHERE degree IN (85, 86, 88);`
6. 逻辑运算符OR:使用OR连接两个条件。显示"95031"班或性别为"女"的student表记录,语句为:`SELECT * FROM student WHERE class = '95031' OR sex = '女';`
7. ORDER BY语句:对查询结果进行排序。以class降序显示student表的所有记录,语句为:`SELECT * FROM student ORDER BY class DESC;`
8. 多列排序:可以同时对多个列进行排序。以cno升序、degree降序显示score表记录,语句为:`SELECT * FROM score ORDER BY cno ASC, degree DESC;`
9. COUNT函数:统计特定列的行数,显示"98031"班的学生人数,语句为:`SELECT COUNT(*) FROM student WHERE class = '98031';`
10. MAX函数:查找最大值。显示score表中的最高分的学生学号和课程号,语句为:`SELECT sno, cno FROM score WHERE degree = (SELECT MAX(degree) FROM score);`
11. AVG函数:计算平均值。显示"3-105"号课程的平均分,语句为:`SELECT AVG(degree) FROM score WHERE cno = '3-105';`
12. HAVING子句与聚合函数:在分组后筛选满足条件的行。显示score表中至少有5名学生选修的并以3开头的课程号的平均分数,语句为:
```sql
SELECT cno, AVG(degree)
FROM score
GROUP BY cno
HAVING cno LIKE '3%' AND COUNT(*) >= 5;
```
13. 子查询:嵌套查询用于获取满足特定条件的值。显示最低分大于70,最高分小于90的sno列,语句为:
```sql
SELECT sno
FROM score
WHERE degree IN (
SELECT sno
FROM score
GROUP BY sno
HAVING MIN(degree) > 70 AND MAX(degree) < 90
);
```
14. 完整列显示:显示所有学生的sname、cno和degree列,语句为:`SELECT sname, cno, degree FROM score;`
15. 全表查询:无条件地显示所有列。显示所有学生的sname、cname和degree,由于cname不在提供的表中,假设是score表的错误,应是cno,语句为:`SELECT sname, cno, degree FROM score;`
以上就是针对所给练习内容的SQL查询语句及其相关知识点的详细说明。通过这些练习,可以加深对SQL语言的理解,掌握数据查询、过滤、排序和聚合等基本操作。
2021-10-14 上传
2015-11-27 上传
422 浏览量
点击了解资源详情
2012-04-03 上传
2022-05-31 上传
2014-08-22 上传
2024-07-15 上传
2020-06-06 上传
八亿中产
- 粉丝: 28
- 资源: 2万+