查询‘计算机系’教师教授课程的成绩表

需积分: 37 5 下载量 86 浏览量 更新于2024-07-12 收藏 261KB PPT 举报
本资源是一份关于数据库查询语言(DML)的练习,特别是SQL语句的运用。问题聚焦于如何从给定的四个表——student(学生信息表)、teacher(老师信息表)、course(课程表)和score(成绩表)中提取特定信息。 1. 查询语句1:列出student表中所有记录的sname、sex和class列。 ```sql SELECT sname, sex, class FROM student; ``` 2. 查询语句2:显示教师所有的单位即不重复的depart列。 ```sql SELECT DISTINCT depart FROM teacher; ``` 3. 查询语句3:显示学生表的所有记录。 ```sql SELECT * FROM student; ``` 4. 查询语句4:显示score表中成绩在60到80之间的所有记录。 ```sql SELECT * FROM score WHERE degree BETWEEN 60 AND 80; ``` 5. 查询语句5:显示score表中成绩为85,86或88的记录。 ```sql SELECT * FROM score WHERE degree IN (85, 86, 88); ``` 6. 查询语句6:显示student表中“95031”班或性别为“女”的同学记录。 ```sql SELECT * FROM student WHERE class = '95031' OR sex = '女'; ``` 7. 查询语句7:以class降序显示student表的所有记录。 ```sql SELECT * FROM student ORDER BY class DESC; ``` 8. 查询语句8:以cno升序、degree降序显示score表的所有记录。 ```sql SELECT * FROM score ORDER BY cno ASC, degree DESC; ``` 9. 查询语句9:显示“98031”班的学生人数。 ```sql SELECT COUNT(*) FROM student WHERE class = '98031'; ``` 10. 查询语句10:显示score表中的最高分的学生学号和课程号。 ```sql SELECT sno, cno FROM score WHERE degree = (SELECT MAX(degree) FROM score); ``` 11. 查询语句11:显示“3-105”号课程的平均分。 ```sql SELECT AVG(degree) FROM score WHERE cno = '3-105'; ``` 12. 查询语句12:显示score表中至少有5名学生选修的并以3开头的课程号的平均分数。 ```sql WITH course_counts AS ( SELECT cno, COUNT(*) as cnt FROM score GROUP BY cno ) SELECT sc.cno, AVG(sc.degree) FROM score sc JOIN course_counts cc ON sc.cno = cc.cno WHERE cc.cnt >= 5 AND sc.cno LIKE '3%' GROUP BY sc.cno; ``` 13. 查询语句13:显示最低分大于70,最高分小于90的sno列。 ```sql SELECT sno FROM ( SELECT sno, MIN(degree) as min_degree, MAX(degree) as max_degree FROM score GROUP BY sno ) AS score_stats WHERE min_degree > 70 AND max_degree < 90; ``` 14. 查询语句14:显示所有学生的sname、cno和degree列。 ```sql SELECT s.sname, s.cno, s.degree FROM student s JOIN score s ON s.sno = score.sno; ``` 15. 查询语句15:显示所有学生的sname、cname和degree。 ```sql SELECT s.sname, c.cname, s.degree FROM student s JOIN score sc ON s.sno = sc.sno JOIN course c ON sc.cno = c.cno; ``` 这些查询语句展示了如何通过SQL进行数据检索,包括子查询、连接操作、聚合函数、排序和条件筛选等基本功能,对于理解和掌握SQL语言至关重要。