1、题 1、 查询 Student 表中的所有记录的 Sname、 Ssex 和 Class列。 2、 查询教师所有的单位即不重复的 Depart列。 3、 查询 Student 表的所有记录。 4、 查询 Score 表中成绩在 60 到 80之间的所有记录。 5、 查询 Score 表中成绩为 85, 86或 88的记录。 6、 查询 Student 表中“ 95031”班或性别为“女”的同学记录。 7、 以 Class 降序查询 Student表的所有记录。 8、 以 Cno 升序、 Degree降序查询 Score 表的所有记录。 9、 查询“ 95031”班 的学生人数。 10、查询 S
2、core 表中的最高分的学生学号和课程号。 11、查询 3-105号课程的平均分。 12、查询 Score 表中至少有 5 名学生选修的并以 3 开头的课程的平均分数。 13、查询最低分大于 70,最高分小于 90 的 Sno 列。 14、查询所有学生的 Sname、 Cno和 Degree 列。 15、查询所有学生的 Sno、 Cname和 Degree 列。 16、查询所有学生的 Sname、 Cname和 Degree 列。 17、查询“ 95033”班所选课程的平均分。 18、假设使用如下命令建立了一个 grade表: create table grade(low numeric(3,
3、0),upp numeric(3),rank char(1); insert into grade values(90,100,A); insert into grade values(80,89,B); insert into grade values(70,79,C); insert into grade values(60,69,D); insert into grade values(0,59,E); 现查询所有同 学的 Sno、 Cno 和 rank列。 19、查询选修“ 3-105”课程的成绩高于“ 109”号同学成绩的所有同学的记录。 20、查询 score 中选学一门以上课程的
4、同学中分数为非最高分成绩的记录。 21、查询成绩高于学号为“ 109”、课程号为“ 3-105”的成绩的所有记录。 22、查询和学号为 108 的同学同年出生的所有学生的 Sno、 Sname 和 Sbirthday 列。 23、查询“张旭“教师任课的学生成绩。 24、查询选修某课程的同学人数多于 5人的教师姓名。 25、查询 95033 班和 95031 班全体学生的记录。 26、查询存在有 85 分以上成绩的课程 Cno. 27、查询出“计算机系“教师所教课程的成绩表。 28、查询“计算机系”与“电子工程系“不同职称的教师的 Tname 和 Prof。 29、查询选修编号为“ 3-105“
5、课程且成绩至少高于选修编号为“ 3-245”的同学的 Cno、 Sno 和 Degree,并按 Degree 从高到低次序排序。 30、查询选修编号为“ 3-105”且成绩高于选修编号为“ 3-245”课程的同学的 Cno、 Sno 和 Degree. 31、查询所有教师和同学的 name、 sex和 birthday. 32、查询所有“女 ”教师和“女”同学的 name、 sex 和 birthday. 33、查询成绩比该课程平均成绩低的同学的成绩表。 34、查询所有任课教师的 Tname 和 Depart. 35 查询所有未讲课的教师的 Tname和 Depart. 36、查询至少有 2
6、名男生的班号。 37、查询 Student 表中不姓“王”的同学记录。 38、查询 Student 表中每个学生的姓名和年龄。 39、查询 Student 表中最大和最小的 Sbirthday 日期值。 40、以班号和年龄从大到小的顺序查询 Student 表中的全部记录。 41、查询“男”教师及 其所上的课程。 42、查询最高分同学的 Sno、 Cno 和 Degree 列。 43、查询和“李军”同性别的所有同学的 Sname. 44、查询和“李军”同性别并同班的同学 Sname. 45、查询所有选修“计算机导论”课程的“男”同学的成绩表 下面是参考答案: SQL 语句练习题参考答案 1.s
7、elect sname,ssex,class from student; 2. select distinct(depart) from teacher; or select distinct depart from teacher; 3.select * from student; 4. select * from score where degree between 60 and 80; or select * from score where degree=60 and degree5; or select cno,avg(degree) from score where cno lik
8、e 3% group by cno having count(*)5; 13.select sno from score group by sno having min(degree)70 and max(degree)(select degree from score where sno=109 and cno=3-105); or select x.* from score x,score y where o=3-105 and x.degreey.degree and y.sno=109 and o=3-105; 20. 分析: 1.成绩非本 科最高 select * from scor
9、e where degree not in (select max(degree) from score group by cno) 选学一门以上的学生成绩: select sno from score group by sno having count(*)1; 2.查询成绩非本科最高并且选 1门以上的学生的成绩 : select * from score where degree not in(select max(degree) from score group by cno) group by sno having count(*)1; or select * from (select
10、 * from score where degree not in(select max(degree) from score group by cno) as aa group by sno having count(*)=2; 通用答案: select sno from ( select * from score where degree not in (select max(degree) from score group by cno) as aa group by sno having count(*)=2; 21. select * from score where degree(
11、select degree from score where sno=109 and cno=3-105); or select x.* from score x,score y where x.degreey.degree and y.sno=109 and o=3-105; 22. select sno,sname,sbirthday from student where year(sbirthday)=(select year(sbirthday) from student where sno=108); 23. select * from score where cno in(sele
12、ct cno from course where tno=(select tno from teacher where tname=张旭 ); or select cno,sno,degree from score where cno=(select o from course x,teacher y where x.tno=y.tno and y.tname=张旭 ); 24. select tname from teacher where tno in (select x.tno from course x,score y where o=o and o in (select cno fr
13、om score group by cno having count(*)5); or select tname from teacher where tno in(select tno from course where cno in(select cno from score group by cno having count(*)5); or select tname from teacher where tno in(select x.tno from course x,score y where o=o group by x.tno having count(x.tno)5); 25
14、. select * from student where class in (95033,95031); or select * from student where class=95033 or class=95031; 26.select distinct cno from score where degree in (select degree from score where degree85); 27. select * from score where cno in (select cno from course where tno in (select tno from tea
15、cher where depart=计算机系 ); or select * from score where cno in(select o from course x,teacher y where y.tno=x.tno and y.depart=计算机系 ); 28.select tname,prof from teacher where depart=计算机系 and prof not in (select prof from teacher where depart=电子工程系 ); 29. select * from score where cno=3-105 and degree
16、(select min(degree) from score where cno=3-245) order by degree desc; or select * from score where cno=3-105and degreeany(select degree from score where cno=3-245) order by degree desc; 30. select * from score where cno=3-105 and degree(select max(degree) from score where cno=3-245); or select * from score where cno=3-105 and degreeall(select degree from score where cno=3-245);
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。