数据库系统概论实验评分系统链接

实验题基于学生选课数据库,其包含三个关系模式:
(1)学生关系模式Student(Sno, Sname, Ssex, Sage,Sdept)
(2)课程关系模式Course(Cno, Cname, Cpno, Ccredit)
(3)选课关系模式SC(Sno, Cno, Grade)其中,
学生关系模式各字段的含义为Sno:学号,Sname:姓名,Ssex:性别,Sage:年龄,Sdept:所在系。
课程关系模式各字段的定义为Cno:课程号,Cname:课程名,Cpno:先行课,Ccredit:学分。
选课关系模式各字段的定义为Sno:学号,Cno:课程号,Grade:成绩。
其中,SC表中学号Sno和课程号Cno分别对应于Student表的主码和Course表的主码,即学号Sno和课程号Cno是SC表的外码。

1.查询全体学生的详细信息!(要求输出全部列)

SELECT *
FROM Student;

2.查询课程的详细信息(要求输出全部列)

SELECT *
FROM Course;

3.查询所有女生的姓名(输出列为:SNAME)

SELECT Sname SNAME
FROM Student 
WHERE Ssex='女';

4.查询至少选修了一门课程的学生学号(请在结果中除去重复值,输出列为:Sno)。

SELECT DISTINCT Sno SNO
FROM SC;

DISTINCT 去重
5.查询年龄不在20~23之间的学生姓名、系别和年龄,并按照年龄降序排列(输出列为:Sname, Sdept,Sage)

SELECT Sname SNAME,Sdept SDEPT,Sage SAGE
FROM Student 
WHERE Sage NOT BETWEEN 20 AND 23
ORDER BY Sage DESC;

ORDER BY <列名>DESC(降序)/ASC(升序)
6.查询所有姓曹的学生的姓名、学号和性别(输出列为:Sname,Sno,Ssex)。

SELECT Sname SNAME,Sno SNO,Ssex SSEX
FROM Student 
WHERE Sname LIKE '曹%';

‘%’代替多字符 ‘_’代替单字符 另一个中文为两个即 ‘__’
7.查询“信息学院”、“理学院”和“经济学院”学生的姓名和性别(输出列为:Sname,Ssex)

SELECT Sname SNAME,Ssex SSEX
FROM Student 
WHERE Sdept IN ('信息学院','理学院','经济学院');

8.查询每个同学选课的数目,并按学号升序排列,(输出列为Sno,选课数目sum)

SELECT Sno SNO,COUNT(Cno) SUM
FROM SC
GROUP BY Sno
ORDER BY Sno;

COUNT 计数 SUM 求和 AVG 求平均 MAX 最大 MIN 最小
9.统计不同系的人数(输出列为:Sdept、人数)。

SELECT Sdept SDEPT,COUNT(Sno) 人数
FROM Student
GROUP BY Sdept;