Download presentation
Presentation is loading. Please wait.
1
请写出下列查询语句并给出结果 1、列出student表中所有记录的sname、sex和class列。 2、显示教师所有的单位即不重复的depart列。 3、显示学生表的所有记录。 4、显示score表中成绩在60到80之间的所有记录。 5、显示score表中成绩为85,86或88的记录。 6、显示student表中“95031”班或性别为“女”的同学记录。 7、以class降序显示student表的所有记录。 8、以cno升序、degree降序显示score表的所有记录。 9、显示“98031”班的学生人数。 10、显示score表中的最高分的学生学号和课程号。 11、显示“3-105”号课程的平均分。
2
请写出下列查询语句并给出结果 12、显示score表中至少有5名学生选修的并以3开头的课程 号的平均分数。 13、显示最低分大于70,最高分小于90 的sno列。 14、显示所有学生的 sname、 cno和degree列。 15、显示所有学生的 sname、 cname和degree列。 16、列出“95033”班所选课程的平均分。 17、显示选修“3-105”课程的成绩高于“109”号同学成绩的 所有同学的记录。 18、显示score中选修多门课程的同学中分数为非最高分成 绩的记录。 19、显示成绩高于学号为“109”、课程号为“3-105”的成绩 的所有记录。
3
请写出下列查询语句并给出结果 20、显示出和学号为“108”的同学同年出生的所有学生的 sno、sname和 birthday列。 21、显示“张旭”老师任课的学生成绩。 22、显示选修某课程的同学人数多于5人的老师姓名。 23、显示“95033”班和“95031”班全体学生的记录。 24、显示存在有85分以上成绩的课程cno。 25、显示“计算机系”老师所教课程的成绩表。 26、显示“计算机系”和“电子工程系”不同职称的老师的 tname和prof。 27、显示选修编号为“3-105”课程且成绩至少高于“3-245”课程的同学的cno、sno和degree,并按degree从高到低次序排列。
4
请写出下列查询语句并给出结果 28、显示选修编号为“3-105”课程且成绩高于“3-245”课程的同 学的cno、sno和degree。 29、列出所有任课老师的tname和depart。 30、列出所有未讲课老师的tname和depart。 31、列出所有老师和同学的 姓名、性别和生日。 *32、检索所学课程包含学生“103”所学课程的学生学号。 *33、检索选修所有课程的学生姓名。
5
create table mb as select * from scott.emp; select * from scott.dept;
6
第三章作业部分答案 1. Select name, sex, class from studnt; 2. Select distinct depart from teacher; 3. Select sno as 学号, name as 姓名, sex as 性别 , birthday as 出生日期 from student; 4. Select * from score where degree between 60 and 80; Select * from score where degree in (85, 86, 88); Select * from student where class=98031 or sex=‘女’; 7. Select * from student order by class desc;
7
8. Select * from score order by cno, degree desc; 9. Select count(*) from student where class=95031; 10. select sno,cno,degree as 最高分 from score where degree= (select max(degree) from score) SNO CNO 最高分
8
11. Select avg(degree) as 课程平均分 from score where cno=‘3-105’ 12. Select cno,avg(degree) from score where cno like ‘3%’ Group by cno having count(*) >=5; 13. Select sno from score group by sno Having min(degree)>70 and max(degree)<90; 14. select sname,cno,degree from score,student where student.sno=score.sno;
9
15. Select sname, cname, degree from course , student,score Where student.sno=score.sno and course.cno=score.cno; 16. Select cno,avg(degree) from student , score where student.sno=score.sno and student.class=‘95033’ group by cno;
10
16另解 SQL> select cno,avg(degree) from score 2 where sno in(select sno from student where class=95033) group by cno; CNO AVG(DEGREE) 16另解 select avg(degree) from score where sno in (select sno from student where class=95033 ) group by cno
11
17(另解) select sno, cno, degree from score where cno='3-105’ and degree>(select degree from score where cno='3-105' and sno=109) 17.select x.cno, x.sno, x.degree from score x, score y where x.cno=‘3-105’ and x.degree>y.degree and y.sno=109 and y.cno=‘3-105’;
12
18. Select a.sno, a.degree, a.cno from score a, score b Where a.sno=b.sno and a.degree<b.degree;
13
19. Select x.cno, x.sno, x.degree from score x, score y Where x.degree>y.degree and y.sno=109 and y.cno=‘3-105’; 20. Select sno,sname,birthday from student Where to_char(birthday,’yy’)= (select to_char(birthday,’yy’) from student where sno=108)
14
21. Select cno, sno, degree from score Where cno=(select x.cno from course x, teacher y where x.tno=y.tno and y.tname=‘张旭’)
15
22. Select tname from teacher Where tno in( select x.tno from course x, score y where x.cno=y.cno group by x.tno having count(x.tno)>5) 子查询临时表的一部分内容 计算机导论 计算机导论 计算机导论 计算机导论 计算机导论
16
23 Select * from student where class in (95033,95031); 24. select distinct cno from score where degree in (select degree from score where degree>85) 或者 select cno from score where degree>85 group by cno; 或者 select cno from score group by cno having max(degree)>85;
17
25. Select cno,sno,degree from score Where cno IN (select x.cno from course x, teacher y where y.tno=x.tno and y.depart=‘计算机系’)
18
26. Select tname, prof from teacher where depart=‘计算机系’ and prof NOT IN (select prof from teacher where depart=‘电子工程系’) 27. Select cno sno,degree from score Where cno=‘3-105’ and degree>any (select degree from score where cno=‘3-245’) Order by degree desc;
19
28. Select cno sno,degree from score Where cno=‘3-105’ and degree>ALL (select degree from score where cno=‘3-245’) 29. Select tname,depart from teacher a where EXIST ( select * from course b where a.tno=b.tno) 或者select tname,depart from teacher where tno in (select tno from course);
20
30. Select name,depart from teacher a where NOT EXIST ( select * from course b where a.tno=b.tno) 31. select name,sex,birthday from teacher union select name,sex,birthday from student
21
32. Select distinct sno from score x Where not exists (select * from score y where y.sno=103 and not exists (select * from score z where z.sno=x.sno and z.cno=y.cno) ) X Y Z
Similar presentations