资源描述
民办四川天一学院实训报告学 号: 姓 名: 院 系: 专 业: 教 师: 2018年 月实训一 SQL数据查询实验实训时间实训地点同组人员成绩2018年4月26日无一、 实训目的1. 熟练掌握基本查询命令select from where语法结构;2. 熟练掌握多表查询命令的设计方法;3. 熟练掌握分组聚合查询应用方式方法;4. 通过观察查询结果,体会查询语句的实际应用。二、 实训原理和内容(内容宋体小四号,行距固定值24磅,首行缩进2字符)实训数据库为学生成绩管理数据库ScoreDB,数据库关系模式如下:Student(studentNo, studentName, sex, birthday, native, nation, classNo)Class(classNo, className, institute, grade, classNum)Course(courseNo, courseName, creditHour, courseHour, priorCourse)Score(studentNo, courseNo, score)实训内容:任务1:在学生Student表中查询年龄大于或等于19岁的同学学号、姓名和出生日期。任务2:在选课Score表中查询成绩在8090分之间的同学学号、课程号和相应成绩。任务3:在班级Class表中查询班级名称中含有会计的班级信息。任务4:在学生 Student表中查询籍贯不是“南昌”或“上海”的同学姓名、籍贯和所属班级编号,并按籍贯的降序排序输出。任务5:查找会计学院全体同学的学号、姓名、籍贯、班级编号和所在班级名称。任务6:查找选修了课程名称为“计算机原理”的同学学号、姓名。任务7:查询每个同学的选课门数、平均分和最高分。任务9:查询平均分在80分以上的每个同学的选课门数、平均分和最高分。实训要求:设计T_SQL命令,并在SQL Server Management Studio的查询分析器中执行命令,观察并分析结果。三、 实训过程任务1:在学生Student表中查询年龄大于或等于19岁的同学学号、姓名和出生日期。任务分析:由任务可知,所需查询的属性都位于一张表student中,因此可以直接进行简单查询,查询条件是. Year(getdate()-year(birthday)查询语句设计如下:select studentNo ,studentName from student whereyear(getdate()-year(birthday)19 and sex=女查询结果:任务2:在选课Score表中查询成绩在8090分之间的同学学号、课程号和相应成绩。任务分析:由任务可知,所查询的属性都位于一张表Score中,因此可以直接进行简单查询,查询条件是:Where (score=80 and score=80 and score80查询语句设计如下:use ScoreDBselect Studentno,COUNT(studentno),MAX(score),AVG(score) from scoregroup by studentNo having avg(score)80查询结果:四、 实训总结通过本次实训,掌握了SQL查询命令的基本使用,以及语法结构其中对SQL的投影,连接,有了初步的认识。相信在以后的实训任务中能够继续加强掌握SQL查询的使用及理解。在设计运行SQL命令中发现有时候会查询不出来,出现错误等问题,主要原因是SQL;命令格式错误或语法和逻辑上的错误。在实训中体会到SQL这种中大型数据库使用非常方便,使用起来大大提高了工作效率,且语法简单,但有些细节的逻辑问题还是要自己理解清楚,不然即使会使用SQL语句查询,但是思想上没有理解还是无法做到完全掌握。
展开阅读全文