数据库数据查询实验报告和答案.doc 下载本文

内容发布更新时间 : 2024/5/18 4:05:47星期一 下面是文章的全部内容请认真阅读。

数据库数据查询实验报告和答案

韶关学院学生实验报告册实验课程名称:数据库技术与应用实验项目名称:数据库的数据查询实验类型(打√):(基础?、综合、设计)院系:专业班级:姓名学号:指导老师:韶关学院教务处编制一、实验预习报告内容预习日期:10月10月22日(星期二第七八节)实验同组人:如有实验数据表格,学生在实验预习时应画好实验数据表格,供实验时填写数据(本页如不够,可另附相同规格的纸张)。 指导教师批阅及签名签名:年月日三、实验报告内容9月24日实验报告内容原则上应包含主要实验步骤、实验数据计算(实验操作)结果、实验结果(疑问)分析等项目。

实施内容:一、根据实验要求完成实验:(写明步骤和截图)1、在数据库studentsdb中,新建表studentdb_info,curriculum,grade。 并输入相应的数据,如图1、2和3所示。

图1图2图32、在studentsdb数据库中,使用下列SQL语句将输出什么?(1)selectcount(*)fromgrade结果如图4所示:图4(2)selectsubstring(学生姓名,1,2)fromstudent_info结果如图5所示:图5(3)selectupper(kelly)结果如图6所示:图6(4)selectreplicate(kelly,3)结果如图7所示:图7(5)selectsqrt(分数)fromgradewhere分数>=85结果如图8所示:图8(6)select2,3,power(2,3)结果如图9所示:图9(7)selectyear(getdate()),month(getdate()),day(getdate())结果如图10所示:图102、在studentsdb数据库中使用select语句近基本查询。 (1)在student_info表中,查询每个学生的学号、姓名、出生日

期信息。

执行如下语句:select学号,学生姓名,出生日期fromstudent_info结果如图11所示图11(2)查询学号为0002的学生的姓名和家庭住址执行如下语句:select学生姓名,家庭地址fromstudent_infowhere学号=0002结果如图12所示图12(3)找出所有男同学的学号和姓名。 执行如下语句:select学号,学生姓名fromstudent_infowhere性别=男结果如图13所示图133、使用select语句进行条件查询。 (1)在grade表中查找分数在80~90范围内的学生的学号和分数。 执行如下语句:select学号,分数fromgradewhere分数between80and90结果如图14所示图14(2)在grade表中查询课程编号为0003的学生的平均分。

执行如下语句:selectavg(分数)as平均成绩fromgradewhere课程编号=0003结果如图15所示图15(3)在grade表中查询学习各门课程的人数。

执行如下语句:select课程编号,count(课程编号)as课程人数fromgradegroupby课程编号结果如图15所示图15(4)将学生按出生日期由大到小排序。

执行如下语句:select*fromstudent_infoorderby出生日期desc结果如图16所示图16(5)查询所有姓“张”的学生的学号和姓名。 执行如下语句:select*fromstudent_infowhere学生姓名like张%结果如图17所示图174、嵌套查询(1)在student_info表中查找与“刘卫民”性别相同的所有学生的姓名、出生日期。

执行如下语句:select学生姓名,出生日期fromstudent_infowhere性别=(select性别fromstudent_infowhere学生姓名=刘卫平)结果如图18所示图18(2)使用in子查询查找所修课程编号为0002、0005的学生学号、姓名、性别。 执行如下语句:select

学号,学生姓名,性别

fromstudent_infowherestudent_info.学号in(select学号fromgradewhere课程编号in(0002,0005))结果如图19所示图19(3)列出学号为0001的学生的分数比0002号学生的最低分数高的课程编号和分数。 执行如下语句:select课程编号,分数fromgradewhere学号=0001and分数>any(select分数fromgradewhere学号=0002)结果如图20所示。 图20(4)列出学号为0001的学生的分数比学号为0002的学生的最高成就还要高的课程编号和分数。

执行如下语句:select课程编号,分数fromgradewhere学号=0001and分数>all(select分数fromgradewhere学号=0002)结果如图21所示。 图215、多表查询(1)查询分数在80~90范围内的学生的学号、姓名、分数。

执行如下语句:selectstudent_info.学号,学生姓名,分数fromstudent_info,gradewherestudent_info.学号=grade.学号and分数between80and90结果如图22所示图22(2)、查询学习“C语言程序设计”课程的学生的学号、姓名和分数。

执行如下语句:selectstudent_info.学号,学生姓名,分数fromstudent_infoinnerjoingradeonstudent_info.学号=grade.学号