下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.实验名称实验6实验地点8-318实验类型设计实验学时1实验日期2018-6-14 撰写注意:版面格式已设置好(不得更改),填入内容即可。一、 实验目的1. 掌握系统数据类型的特点和功能。2. 掌握创建、修改表结构的方法。3. 掌握插入、更新和删除表数据的方法。二、 实验内容1.查询所有班级的期末成绩平均分,并按照平均分降序排序。2.查询教师基本信息和教授课程信息,其中包括未分配课程的教师信息。3.查询160501班级中选修了“韩晋升”老师讲授的课程的学生学号、姓名、课程号和期末成绩。4.查询每门课程的课程号、课程名和选修该课程的学生人数,并按所选人数升序排序。5.查询两门及以上课程的期末成绩
2、超过80分的学生姓名及平均成绩。6.查询入学考试成绩最高的学生学号、姓名和入学成绩。7.查询同时教授c05127号和c05109号课程的教师信息。8.查询至少选修了姓名为“韩吟秋”的学生所选修课程中一门课程的学生学号和姓名。9.查询所有教授c05127号课程的教师信息。10.查询没有被任何学生选修的课程编号、课程名称和学分。11.查询“C语言”课程期末成绩比“电子技术”课程期末成绩高的所有学生的学号和姓名。12查询所有班级期末平均成绩的最高分,并将其赋值给变量,通过PRINT语句输出。13.使用游标输出学生姓名、选修课程名称和期末考试成绩。14.使用游标统计每个学院教师所开设课程的选修率。15
3、.使用游标计算学生期末成绩的等级,并更新level列。三、 实验环境1. 操作系统:Windows XP2. 开发软件:SQL Server 2008四、 提交文档提交本实验报告(电子版),文件名命名:学号 姓名实验X:XXXXXXX.doc教师将批阅后(有分数)的全体学生实验报告刻入一张光盘存档,保证光盘可读。五、 附:源代码1.select studentno,AVG(final) as 平均分 from score group by studentno order by AVG(final)2.select * from teacherselect * from studentselec
4、t * from courseinsert into course(courseno,cname,ctype,period,credit)values(c05103,高等数学,必修,64,4.0) select * from scoreinsert into score(studentno,courseno,usually,final)values(16122210009,c05103,87.00,82.00)insert into teacher(teacherno,tname,major,prof,department)values(t05001,韩晋升,软件工程,教授,计算机学院)sel
5、ect * from classinsert into class(classno,classname,department,monitor)values(160501,计算机,计算机学院,张三)select * from teach_classinsert into teach_class(teacherno,classno,courseno)values(t05001,160501,c05103)select * from teacherselect * from courseselect * from scoreselect classno,AVG(final) as 平均分 from
6、student join scoreon student.studentno=score.studentno group by classnoorder by AVG(final) descselect teacher.*,cname from teacher left join teach_classon teacher.teacherno=teach_class.teachernoleft join course on teach_class.classno=course.courseno3.select student.studentno,sname,cname,final from s
7、tudentjoin score on student.studentno=score.studentnojoin course on course.courseno=score.coursenowhere score.courseno in(select courseno from teach_class join teacher on teach_class.teacherno=teacher.teachernowhere tname=韩晋升)and classno=0905014.select course.courseno,cname,COUNT(studentno) fromscor
8、e join course on score.courseno=course.coursenogroup by course.courseno,cnameorder by COUNT(studentno) desc5.select sname,AVG(final) from score join student on score.studentno=student.studentnowhere final=80group by student.studentno,snamehaving COUNT(courseno)=26.select studentno,sname,point from s
9、tudent wherestudentno=(select top 1 studentno from student order by point)7.select teacher.teacherno,tname,major ,prof,department from teacher join teach_class on teacher.teacherno=teach_class.teachernowhere courseno=c051278.select distinct student.studentno,sname from scorejoin student on score.stu
10、dentno=student.studentnowhere courseno in(select courseno from score join student onscore.studentno=student.studentnowhere sname=韩吟秋)and sname!=韩吟秋9.select * from teacher where teacherno in(select teacherno from teach_class wherecourseno=c05127)10.select courseno,cname,credit from course where not e
11、xists(select * from score where score.courseno=course.courseno)11.select student.studentno,sname from score sc1 join studenton (sc1.studentno=student.studentno) join course c1 on(sc1.courseno=c1.courseno)where ame=c语言 and exists(select * from score sc2 join course c2 on(sc2.courseno=c2.courseno
12、)where ame=电子技术 and sc1.studentno=sc2.studentnoand sc1.finalsc2.final)12.declare max numeric(6,2)select max=MAX(平均分) from (select classno as 班级号,AVG(final) as 平均分 from scorejoin student on (score.studentno=student.studentno)join course on (course.courseno=score.courseno)where final is not nullg
13、roup by classno) tprint 所有班级期末平均成绩的最高分:+cast(max as varchar(6)13.declare sname nchar(8),cname nchar(10),final numeric(6,2)declare sc_cursor cursor forselect sname,cname,finalfrom score join student on(score.studentno=student.studentno)join course on(score.courseno=course.courseno)open sc_cursorfetch
14、 next from sc_cursor into sname,cname,finalprint 学生姓名 课程名称 期末成绩print -while FETCH_STATUS=0beginprint sname+cname+cast(final as nchar(6)fetch next from sc_cursor into sname,cname,finalendclose sc_cursordeallocate sc_cursor14.declare department nchar(30),num int,avg floatdeclare cur cursor staticfor s
15、elect department,count(*) as 选修课数 from classwhere class.classno in(select student.classno from student group by classno)group by departmentopen curfetch curinto department,numset avg=num/(select COUNT(*) from class where department=department)print departmentprint avgwhile FETCH_STATUS=0beginfetch n
16、ext from curinto department,numset avg=num/(select COUNT(*) from class where department=department)print departmentprint avgendclose curdeallocate cur15.declare sname nchar(30),cname nchar(30),final floatdeclare stu cursor staticforselect sname,final,cnamefrom student,score,coursewhere student.studentno=score.studentno and course.courseno=score.coursenoopen stufetch stuinto sname,final,cnameif final=90print N优
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医学26年:肾疾病分级诊疗要点 查房课件
- 2026年甘肃省中考语文模拟试卷(一)(含详细答案解析)
- 破伤风脱敏知情同意书
- 健康局所属公立医院校园(60名)考前自测高频考点模拟试题及答案
- 期末教师个人工作总结
- 副主任任职试用期满转正工作总结
- 初三教学个人工作总结
- 大数据怎么发挥大价值
- 底座板钢筋施工技术交底
- 蔬果高风险环节管控措施
- 2026石家庄新天智慧能源有限公司招聘44人考试备考试题及答案解析
- 2026中铝宁夏能源集团有限公司西藏金龙铜矿源网荷储一体化综合供电项目定向招聘55人笔试备考题库及答案解析
- 2026广东深圳市南山区机关事业单位招聘编外人员139人笔试备考试题及答案解析
- 2026春季江西铜业集团有限公司贵溪冶炼厂校园招聘变更20人笔试备考试题及答案解析
- 2026年全民营养周营养餐桌家庭健康宣传课件
- 算电协同发展契机 (课件)
- ISO140012026标准解读文件
- 机关工会财务审批制度
- 老年人尿失禁评估与干预
- 八年级义务教育劳动国测模拟试题
- 九年级下册《儒林外史》整本书阅读专题式推进教学设计
评论
0/150
提交评论