《《MySQL数据原理与应用》实验报告实验5表记录的检索.docx》由会员分享,可在线阅读,更多相关《《MySQL数据原理与应用》实验报告实验5表记录的检索.docx(8页珍藏版)》请在优知文库上搜索。
1、实验5表记录的检索实验目的令了解查询功能的概念和实际作用;令熟练使用各类型查询;令熟练查询的实际应用。要求:所有操作结果均以截图的形式保存,截取的图上尽可能的出现自己的个人信息。实验设备PC机一台;Win7/10操作系统;MySQL8.0、NavicatWorkbench0【实验报告提交】在完成本实验文档要求的所有任务后,加上版权(水印),将文件以“学号姓名+实验5表记录的检索”命名,并转换成PDF文件,提交至超星平台本课程对应的作业文件夹中。实验任务任务1查询课程表中课程学分为4的专业基础课的课程信息任务2查询学生表中最高和最矮身高任务3查询计算机学院所管理的班级数量任务4查询选修了数据库原
2、理与应用课程的学生姓名任务5综合查询的应用任务6使用Workbench工具进行连接查询任务7使用Navicat工具进行综合查询任务8实验过程中常见错误解决方法实验流程任务1查询课程表中课程学分为4的专业基础课的课程信息【任务需求】查询课程表中课程学分为4的专业基础课的课程信息。使用AND关键字指定条件课程学分为4并且课程类型为“专业基础课二【任务参考效果图】ysqlStUCTFMtbfoux”WREceour。曲Mim;courti: V*Uwta cours.crdii: 4crM.ld:KiOOl*中4噂的阳本字WTIIU.人国夫人旬收不式I 在夕gr*escnbeBUM咋M(JT,成川的
3、“,1僻机JPj。的。仍仲工&电,实KUA。启的0SIyfAPthon.IEB开发技术等it,:S4:m少筋UiJIW必幡谭僮谭匕6,1B机灵!好的员憎体.-V.&值ru*bHi.KH*x4.:ne.urn.*n.vauMttmtf!iNn.uafli4fi.ht,iu!L.ufafyn.vfriMR一:It学内,和HM.ue.AK*H卜4好年IflbKG*M1的?攻A7出at7ja*llk.S?KWhl11ll噎“.0./Hl*埼的学J.【任务完成效果图】请按照任务需求将完成的效果图放在下方。任务2查询学生表中最高和最矮身高【任务需求】查询学生表中最高和最矮身高。对字段studentheig
4、ht分别使用MAX和MIN函数计算最大值和最小值。【任务参考效果图】mysqlSELECTMAX(student_height)AS最高身高,MN(student_height)AS最低身高-FROMtb_student;!最高身高!最低身高I187I145I1rowinset(0.00sec)【任务完成效果图】请按照任务需求将完成的效果图放在下方。任务3查询计算机学院所管理的班级数量【任务需求】查询计算机学院所管理的班级数量。使用JOIN关键字将tbdepartment和tbClaSS数据表连接起来,定义两表匹配的字段department_id,WHERE子句指定字段departmentna
5、me的值是“计算机学院”,使用COUNT函数计算tbclass数据表符合记录的行数。【任务参考效果图】mysqlSELECTCOUvr(*)AS计算机学院所管理的班级数t- FROMtb_class- JOINtb_departmentONtb_class.department_id=tb_department.department_id- jWHEREdepartment_name=,计匏机学院,:计算机学院所管理的班级数量I15I+-一一一一一一一一一+1 rowinset(0.00sec)【任务完成效果图】请按照任务需求将完成的效果图放在下方。任务4查询选修了数据库原理与应用课程的学生姓
6、名【任务需求】查询选修了数据库原理与应用课程的学生姓名。在数据表tb_course中确定课程”数据库原理与应用”的课程号为“K1001”,子查询中指定输出字段student_id为结果集,子查询中连接tb_grade和tb_course数据表,查询出选修了“数据库原理与应用”课程的学生学号,外查询用IN关键字取得子查询中的结果集,查询学生表中符合条件的学生姓名。nysql-伦伦伦宇并明照宇! 嘉嘉嘉宇子晓z:宇云璐 潘唐蒋余卢宋彭崔廖高SELECTstudent_nameAS姓名FROMtb_studentWHEREstudent_idIN(SELECTstudent_idFROMtb_gra
7、deJOINtb_courseONtb_grade.course_id=tb_course.course_idWHEREtb_course.course_id=,K100):姓名10rowsinset(0.00sec)【任务完成效果图】请按照任务需求将完成的效果图放在下方。任务5综合查询的应用【任务需求】对成绩表进行操作:成绩=成输出等级为“优”,=80等级为“良,=70等级为“中“,=60等级为及格,60等级为“不及格:该语句指定输出了字段tb_student.student_id,course_id,grade_score以及别名grade_level;grade_level内是由CASE
8、语句定义输出,实现了对字段grade_score的值判断,完成任务需求;FRoM子句中使用了JolN关键字将tb_grade与tb_student数据表相连接。nysqlSELECT tb_student. StudenJid, course_id, grade-score,grade_score60 THEN 不及格(CASE WHENWHENWHENWHENELSE END) FROMgrade_score=70 THEN 及格grade_score=80 THEN 中grade_score=90 THEN 良grade : 成绩克常一WHENscore swJ Export! t I W
9、rap C CoAtanIs SQLAddttiOAS AlIS T I MptoAutomatic context help is disabled. Use the tlbar t manually get help for the current caret position or h toggle automatic help.Result 1 O ReadOriyContext Hdp Smppcts*,RO8砌LfmtO100Orows,%也区SflECTStudenJnweFROHtb-studentXINtb-gradeONtbastudent.student_idtb_grd
10、e.studentidGROUPBYtb_studnt.studet-idHAVINGstudetvnmeLIKE黄AMDAVG(grdc.score)Mj【任务完成效果图】请按照任务需求将完成的效果图放在下方。任务7使用Navicat工具进行综合查询【任务需求】因项目开展需要,需要在db_study数据库中判断学生表中男生平均身高是否大于170,是则输出“男生身高不错”,否则输出“男生有点矮”。【任务参考效果图】Ul*亍无阚B-青询俣布圭港创建工具美化SQLQ代码段文本导出结杲创建圈衰回 MySQlyBdb-study运行 停止mILSELECT(CASEWHEN(SELECTAVG(StU
11、denJheight)AS平均身高2FROMtbstudentUHEREStUdenJgender=男)170THEN,男生力高不错3ELSE勇生有点矮4END)AS身高评价;值8!AS结果1剖析tt三身高评价,先生有点矮任务8实验过程中常见错误解决【任务需求】在实验过程中出现如下图所示的错误,请调试,并写出解决办法。【实验思考】1 .分组查询失败在使用GROUPBY时,如下图所示命令提示符报错ERROR1055(42000):Expression#2ofSELECTlistisnotinGROUPBYclauseandcontainsnonaggregatedcolumndb_study.t
12、b_student.student_genderwhichisnotfunctionallydependentoncolumnsinGROUPBYclause;thisisincompatiblewithsql_mode=only_full_group_byERR呢1055(42000):Expression#2ofSELECTlistisnotin就OUPBYclauseandcontainsnonaggregatedcolumn,db-study.tb-student.student-genderwhichisnotfunctionallydependentoncolumnsinGlOUPBYclause:thisisincoapatiblewithsqL