数据库题库

2018-12-17 14:20

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询计算机系学生的姓名、所选的课程号和成绩。

select sname,cno,grade from student join sc on student.sno = sc.sno where sdept = '计算机系'

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询计算机系年龄大于20的学生详细信息。

select * from student where sdept = '计算机系' and sage > 20

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询第3学期开设的学分为4的课程名。

select cname from course where semester = 3 and creidt = 4

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询第2~4学期开设课程的课程名、学分和开课学期。

select cname,credit,semester from course where semester between 2 and 4

设有课程表:Course(Cno,Cname,Credit,Semester)。

写出在Course表中插入一行新数据的SQL语句,课程号为C100,课程名为Java,开课学期未定,学分为3。

insert into course values('C100','Java',3,null)

'设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询奇数学期(设学期的取值是1~8的整数)开设的课程名、开课学期和学分。 select cname,credit,semester from course where semester in(1,3,5,7)

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester),

选课表:SC(Sno,Cno,Grade)

查询计算机系成绩在80~90之间的学生姓名、课程名和成绩。

select sname,cname,grade from Student join SC on Student.sno = SC.sno join Course on Course.cno = SC.cno

where sdept = '计算机系' and grade between 80 and 90

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept),

写出在Student表中插入一行新数据的SQL语句,学号为S100,姓名:新生,性别:男,年龄:19,所在系未定。

insert into Student values('S100','新生','男',19,null)

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

统计每个系的女生人数,列出系名和女生人数。

select sdept,count(*) 女生人数 from student where ssex = '女' group by sdept

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

统计每个系的选课人数,列出系名和选课人数。

select sdept,count(distinct s.sno ) 选课人数 from student s join sc on s.sno = sc.sno group by sdept

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept) 将计算机系学生年龄加1。

update student set sage = sage + 1 where sdept = '计算机系'

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

统计计算机系每个学生的选课门数和考试总成绩(不包括没选课的学生),并按选课门数升序显示结果。

select s.sno,count(*) 选课门数,sum(grade) 总成绩 from student s join sc on student.sno = sc.sno

where sdept = '计算机系' group by s.sno order by count(*) asc

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept),

课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询选修了Java课程的学生姓名和所在系。

select sname,sdept from student s join sc on s.sno = sc.sno join course c on c.cno = sc.cno where cname = 'Java'

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询成绩80分以上的学生姓名、课程号和成绩,并按成绩降序排列结果。

select sname,cno,grade from student s join sc on s.sno = sc.sno where grade > 80 order by grade desc

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询选课门数最多的前2位学生,列出学号和选课门数。(不考虑并列情况) select top 2 sno,count(*) 选课门数 from sc group by sno order by count(*) desc

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询选课人数最少的2门课程(包括没人选的课程,包括并列的情况),列出课程号和选课人数。(请用外连接实现)

select top 2 with ties c.cno,Count(sc.cno) 选课人数 from course c left join sc on c.cno = sc.cno group by c.cno order by count(sc.cno) asc

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询哪些课程没有学生选,列出课程号和课程名。(请用外连接实现)

select c.cno,cname from course c left join sc on c.cno = sc.cno where sc.cno is null

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester),

选课表:SC(Sno,Cno,Grade)

查询计算机系哪些学生没有选课,列出学生姓名。(请用外连接实现)

select sname from student s left join sc on s.sno = sc.sno where sdept = '计算机系' and sc.sno is null

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询计算机系Java考试成绩最高的前3名学生的姓名和Java成绩(包括并列情况)。(请用连接查询实现)

select top 3 with ties sname from student s join sc on s.sno = sc.sno join course c on c.cno = sc.cno where cname = 'Java' and sdept = '计算机系' order by grade desc

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade) 查询年龄最大的男生姓名和年龄。(请用子查询实现) select sname,sage from student where sage in( select max(sage) from student where ssex = '男') and ssex = '男'

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询C001课程的考试成绩高于该课程平均成绩的学生的学号和C001课成绩。(请用子查询实现)

select sno,grade from sc where cno = 'c001' and grade >( select avg(grade) from sc where cno = 'c001')

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

删除Java考试成绩小于50的学生的全部选课记录。(请用子查询形式实现) delete from sc where grade < 50 and cno in ( select cno from course where cname = 'Java' )

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

删除计算机系Java成绩不及格(小于60)学生的Java选课记录。(请用子查询形式实现) delete from sc

where sno in ( select sno from student where sdept = '计算机系') and cno in ( select cno from course where cname = 'Java')

and grade < 60

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

删除选课人数少于10人的课程(包括没人选的课程)。(请用子查询实现)

delete from course where cno in ( select cno from course c left join sc on c.cno = sc.cno group by c.cno having count(sc.cno)<10)

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept), 课程表:Course(Cno,Cname,Credit,Semester), 选课表:SC(Sno,Cno,Grade)

查询计算机系每个学生的Java考试情况,列出学号、姓名、Java成绩和成绩情况,其中成绩情况的显示规则为:

如果成绩大于等于90,则成绩情况为“好”; 如果成绩在80~89,则成绩情况为“较好”; 如果成绩在70~79,则成绩情况为“一般”; 如果成绩在60~69,则成绩情况为“较差”; 如果成绩小于60,则成绩情况为“差”。 select s.sno,sname,grade,成绩情况 = case when grade >= 90 then '好'

when grade between 80 and 89 then '较好' when grade between 70 and 79 then '一般' when grade between 60 and 69 then '较差' when grade < 60 then '差' end

from student s join sc on s.sno = sc.sno join course c on c.cno = sc.cno where cname = 'Java'

设有学生表:Student(Sno,Sname,Ssex,Sage,Sdept),


数据库题库.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016-2017年新北师大版数学四年级上册上学期第六单元方向与位置

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: