数据库系统上机实验题
一、学生学习系统的基本表
学生:s(sno,sname , sex , age , dept );表中属性分别为:学号,姓名,性别,年龄和
系名。
课程:c(cno , cname , tname );表中属性分别为:课号,课名,教师名。选课:sc(sno , cno , grade );表中属性分别为:学号,课号和成绩。
要求:利用SQL语句创建上面三个基本表,包括:主键,外键定义。
有针对性地输入一些实验数据。
二、利用SQL语句,在上面三个基本表中,完成如下的功能
1.查找学号2至10号学生的学号、姓名和系名。
2.查找女同学的人数。
3.查找学号2至10号学生中,女同学的人数。
4.查找男、女同学各有多少人(注:输出性别和人数)。
5.查找‘CS’系中,男、女同学各有多少人(注:输出性别和人数)
6.查找年龄在18至20岁之间的所有男同学的学号、姓名和系名。
7.查找所有学生选修课程的门数。
8.查找学号2至15号学生中,英语成绩超过80分的学生学号和姓名。
9.查找没有学习‘物理’课程的学生姓名和系名。
10.查找‘王明’同学所学课程的门数。
11.统计‘王明’同学所学各门课程的平均分数。
12.统计英语成绩高于该课程平均成绩的人数。
13.查找查找至少选修了‘王一’和‘王二’老师所授课程的学生学号与姓名。
14.查找‘CS’系比‘MA’系的学生年龄都小的学生姓名和系名。
15.统计每个学生的总分,输出学生的学号和总分,总分按降序排列。
16.查找学号比‘王一’同学大,而年龄比他小的学生学号、姓名和年龄。
17.查找年龄大于女同学的平均年龄的男同学的姓名与年龄。
18.查找只选修了一门课程的同学的学号和姓名。
19.查找‘CS’系学生中,没有选修‘王一’老师课程的学号、姓名和系名。
20.查找至少选修了3门课程的学生学号和姓名。
21.查找每门课程的最高分和最低分。(注:输出课号、最高分和最低分)
22.采用查询视图方式完成21题的功能:
利用视图方式的步骤:
建立视图,如:gdf(cno,max,min) 属性:课号、最高分和最低分。利用SELECT语句对视图gdf查询显示。
在完成以上题目后,再利用SQL更新语句完成如下操作功能:
1.将所有学生的年龄增加1岁。
2.将‘物理’课程不及格的成绩改为0分。
3.删除‘王五’老师的任课信息。
4.将一门课的成绩大于等于80分学生的学号、姓名和系名插入到一个已存在(要建
立)基本表stu(sno,sname,dept)中。