




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库第四次实验报告学 院: 班 级: 姓 名: 学 号: 实验四 数据库的查询实验(两次内容)1. 简单查询:(第一部分的实验)实验要求:(1) 查询班号为g00401班的学生的学号和姓名;(2) 查询“数据库开发技术”课程的学分;(3) 查询选修了课程编号为“dep04_s003”的学生的学号和成绩,并将成绩按降序输出;(4) 查询学号为“g9940205”的学生选修的课程编号和成绩;(5) 查询选修了课程编号为“dep04_s001”且成绩高于85分的学生的学号和成绩。实验步骤:(下面用代码、截图以及注释来体现)(1) 查询班号为g00401班的学生的学号和姓名;代码为:select student_id,student_namefrom student where class_id=g00401; 截图为:因为 student 表里并没有class_id=g00401这一项,所以查询结果为空,没有显示出该元组的值。(2) 查询“数据库开发技术”课程的学分;代码为: select creditfrom course where course_name=SQL Server数据库开发技术;截图为:可以看到结果查询结果是正确的。(3)查询选修了课程编号为“dep04_s003”的学生的学号和成绩,并将成绩按降序输出;代码为:select student_id,gradefrom student_course where course_id=dep04_s003order by grade desc截图为:可以看到总共输出了7个符合条件的结果,分数按降序排列,实验完成。(4) 查询学号为“g9940205”的学生选修的课程编号和成绩;代码为:select course_id,gradefrom student_course where student_id=g9940205;截图为:结果正确(5) 查询选修了课程编号为“dep04_s001”且成绩高于85分的学生的学号和成绩。代码为:select student_id,gradefrom student_course where course_id=dep04_s001 and grade85;截图为:由下图可以看出,查询成功。2.在多表连接的查询实验中,用Transact SQL语句完成以下查询操作:(第二部分的实验)实验要求:(1)查询选修了课程编号为“dep04_s002”且成绩高于85分的学生的学号、姓名和成绩;(2)查询所有学生的学号、姓名、选修的课程名称和成绩;(3)查询计算机科学系林红同学选修的课程名称、学分和成绩。(考试成绩60有学分,否则无学分。)实验步骤:(下面用代码、截图以及注释来体现)(1)查询选修了课程编号为“dep04_s002”且成绩高于85分的学生的学号、姓名和成绩;代码为:select student.student_id,student_name,gradefrom student_course ,student where student.student_id=student_course.student_id and course_id=dep04_s002 and grade85;截图为:(2)查询所有学生的学号、姓名、选修的课程名称和成绩;代码为:select student.student_id,student_name,course_name,gradefrom student_course ,student ,coursewhere student.student_id=student_course.student_id and course.course_id=student_course.course_id;截图为:(3) 查询计算机科学系林红同学选修的课程名称、学分和成绩。(考试成绩60有学分,否则无学分。)代码为:use studentsdb;select course_name,credit,gradefrom student,class,department,student_course,coursewhere student.class_id=class.class_id and class.department_id=department.department_id andstudent.student_id=student_course.student_id and student_course.course_id=course.course_iddepartment_name=计算机科学 and student_name=林红 and grade=60;截图为:3. 在复杂查询实验中,用Transact SQL语句完成以下查询操作:(1)查询至少选修了三门课程的学生的学号和姓名;代码为:use studentsdb;select student.student_id,student_namefrom student ,student_coursewhere student.student_id=student_course.student_id group by student.student_id having count(*)3; 截图为: (2)查询选修课程号为“dep04_b001”的学生的平均成绩;代码为:use studentsdb;select avg(grade)from student_coursewhere course_id=dep04_b001;截图为:(3)查询所有学生的学号和他选修课程的最高成绩,要求他的选修课程中没有成绩为空的。代码为:use studentsdb;select student_id,max(grade)from student_coursewhere grade is not nullgroup by student_id ;截图为:(4)查询严为老师2001/2002学年教的软件开发技术课程的最高成绩及此学生的学号、姓名、班级。代码为: use studentsdb; select student.student_id,student_name,student.class_id,max(grade) from student,student_course,teacher,teacher_course_class,course where student.student_id=student_course.student_id and teacher.teacher_id=teacher_course_class.teacher_id and teacher_course_class.course_id=course.course_id and student_course.course_id=teacher_course_class.course_id and teacher_name=严为 and student_course.school_year=2001/2002 and course_name=软件开发技术 and student_name=林红group by student.student_id,student_name,student.class_id;截图为:(5) 查询数据库开发技术课程用过的教材名称,作者和出版社。代码为:use studentsdb;select book_name,author,publish_companyfrom book ,coursewhere book.book_id=course.book_id and course_name=SQL Server数据库开 发;执行结果如下:(6)查询计算机科学系讲授过数据库开发技术的老师姓名和职称。截图为:use studentsdb;select teacher_name, professionfrom teacher,teacher_course_class,course,departmentwhere teacher.teacher_id=teacher_course_class.teacher_id and teacher_course_class.course_id=course.course_id and department.department_id=teacher.department_id and department_name=计算机科学 and course_name=SQL Server数据库开发;执行结果如下:4.在嵌套查询实验中,用Transact SQL语句完成以下查询操作,要求写嵌套查询语句:(1)查询选修了电磁波工程的学生的学号和姓名; 代码为: use studentsdb; select student_id ,student_name from student where student_id in(select student_id from student_course where course_id in(select course_id from course where course_name=电磁波工程);截图为:(2)查询没有选修电磁波工程的学生的学号和姓名;代码为: use studentsdb; select student_id ,student_name from student where student_id not in(select student_id from student_course where course_id in(select course_id from course where course_name=电磁波工程);截图为: 5.建立如下视图:学生选修课程信息视图,包括以下内容:1) 学生学号、姓名、所在系、授课老师姓名、课程名称、课程教材名称、出版社、学分、选课成绩 代码为: create view 学生选修课程信息视图(学生学号,姓名,所在系,授课老师姓名,课程名称,课程教材名称,出版社,学分,选课成绩) as select student.student_id,student_name,department.department_id,teacher_name,course_name,book_name,publish_company,course.credit,gradefrom student,department,teacher,teacher_course_class,student_course,class,course,bookwhere student.class_id=class.class_id and class.department_id=department.department_id and student.class_id=teacher_course_class.class_id and teacher_course_class.teacher_id =teacher.teacher_id and student.student_id=student_course.student_id and student_course.course_id=course.course_id and course.book_id=book.book_id ;截图为: 如果是使用企业管理器来进行视图的创建,只要右键点击视图,选择新 建视图,并按照要求创建即可。2)修改以上视图,增加学生所在班级信息。对以上内容用企业管理器和SQL语句方式分别完成。 代码为: ALTER view dbo.学生选修课程信息视图(学生学号,姓名,所在系,授课老师姓名,课程名称,课程教材名称,出版社,学分,选课成绩,学生班级)as select student.student_id,student_name,department.department_id,teacher_name,course_name,book_name,publish_company,course.credit,grade,student.class_idfrom student,department,teacher,teacher_course_class,student_course,class,course,bookwhere student.class_id=class.class_id and class.department_id=department.department_id and student.class_id=teacher_course_class.class_id and teacher_course_class.teacher_id =teacher.teacher_id and student.student_id=student_course.student_id and student_course.course_id=course.course_id and course.book_id=book.book_id ; 截图为: 使用企业管理器的修改方法:右键单击学生选课课程信息视图,选择设计,在 添加上class_id这一列即可3)对以上视图进行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 技术支持服务提供与验收协议
- 中国古代文学中的现实主义精神解析
- 口语中的现在完成时:八年级英语语法强化教案
- 中学语文新课标教学法研究
- 基于UbD理论的初中数学单元整体教学设计研究
- 猜猜我是谁作文500字13篇
- 胃癌患者经济毒性、自我效能、灵性健康与生命质量的关系研究
- 基于CCOQ新型交换架构大容量TTE交换机设计与实现
- LDMOS器件TID与HCI耦合效应的研究
- 医疗器械采购合同关键条款及售后服务
- DB32T3434-2018人民防空核生化监测中心工程设计规范
- 防火门维护与保养流程
- 人大代表应聘简历
- 【MOOC】《Python语言程序设计》(东北大学)中国大学慕课答案
- 23《海底世界》说课稿- 2023-2024学年统编版语文三年级下册
- 2024年黑龙江省《辅警招聘考试必刷500题》考试题库附答案(满分必刷)
- 2025年广西宏桂集团招聘笔试参考题库含答案解析
- 起重机培训课件-指挥职责及操作
- 经济地理学讲义(2024级)
- 电网智能化运维管理平台建设
- 无处不在-传染病知到智慧树章节测试课后答案2024年秋南昌大学
评论
0/150
提交评论