实验一sql语言及相关操作及答案_第1页
实验一sql语言及相关操作及答案_第2页
实验一sql语言及相关操作及答案_第3页
实验一sql语言及相关操作及答案_第4页
实验一sql语言及相关操作及答案_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、-. z实验一 SQL语言及相关操作实验目的本实验的目的是使学生掌握如何在SQL Server Management studio中进展查询分析以及对数据库中的表和数据进展操作,加深对SQL和SQL语言相关操作理解。熟练掌握数据查询、表的更新等操作方法。实验时数 4学时三、实验容:(1)利用SQL语句进展简单查询和连接查询操作。1.列出所有course的课程号、课程名和学分。查询所有蒙古族学生的*、和所在学院。在score表中显示平均成绩都高于85分的学生*、课程号和成绩。查询选修课称号为001或005且平均成绩大于等于75分学生的*、课程号和成绩。查询信息管理学院1991年出生的所有男生的信

2、息。查询所有学生的年龄。查询所有姓王或姓黄的学生的、生日和所在班级名称。查询先修课程为数据构造的所有课程。查询信息管理学院非汉族同学的*、性别及民族。查找选修了操作系统的学生*、成绩和。查找至少选修了一门其直接先修课编号为004的课程的学生*和。查找至少选修了*为0800001的学生所选课程的学生*和。104查询出生日期在1991年以后的学生的*、籍贯和年龄。在student表中查询学生的*、和平均成绩,并按照平均成绩的降序排列。查找了选修了以C语言程序设计为其直接先修课的课程的学生*、课程号和成绩。在score表中查询平均成绩大于80的学生的*、课程号和成绩,并先按照课程号的升序、再按照成绩

3、的降序排列。查找信息管理学院学生选课情况,显示学生、课程名和成绩。统计student表中的男女学生的人数。查询成绩最高分的学生的*、课程号和相应成绩。查询选课少于3门的学生的*及其选课的门数。(2) 利用SQL语句进展表的管理等操作。1.给class表中的classname字段添加唯一约束。给Student表中的se*字段添加检查约束。3.建立学生会表StudentUnion,包含三个字段:编号SIDchar(2),studnetName (varchar(20),职务post(char(15)。4.为StudentUnion表插入两条数据1,小勇,学生会主席, 2,吴敏,文艺部长在上题中建立

4、的表StudentUnion中增加一个字段(char(8),为列添加检查约束,要求每个新参加或修改的为8位数字。为StudentUnion表增加一个字段地址varchar(50)。在表StudentUnion中的地址字段添加一个默认约束,默认值为独墅湖高教区仁爱路1号。把字段职务post的数据类型改为varchar(15)。将计算机科学与技术07-01班的男同学的成绩减去5分。将*为0800008同学的籍贯修改为。实验目的请各位同学结合实验容,写实验的总结,可以写在实验中、学习中遇到的问题,如何解决的,最后学到了哪些知识。每个同学的总结应该都是不同的,如果发现有雷同的实验报告,都将本次实验成绩

5、作为不及格记录。完本钱次实验后,请根据要求完成实验报告,实验报告要求每一题都配合都准确的截图,截图的大小不能超过实验报告纸的围且不能把实验报告的头部容给遮挡住。-(1)利用SQL语句进展简单查询和连接查询操作。-1.列出所有course的课程号、课程名和学分。selectcourseno,coursename,credithourfromcourse;-2.查询所有蒙古族学生的*、和所在学院。selectstudentNo,studentName,institutefromStudent,Classwherestudent.classNo=Class.classNo;-3.在score表中显示

6、平均成绩都高于85分的学生*、课程号和成绩。select*fromScorewherestudentNoin(selectstudentnofromScoregroupbystudentNohavingAVG(score)85);-4.查询选修课称号为001或005且平均成绩大于等于75分学生的*、课程号和成绩。select*fromScorewherecourseNoin(001,005)andstudentNoin(selectstudentNofromScoregroupbystudentNohavingAVG(score)=75);-5.查询信息管理学院年出生的所有男生的信息。sele

7、ct*fromStudent,Classwhereinstitute=信息管理学院andse*=男andYEAR(birthday)=1991;-6.查询所有学生的年龄。selectstudentno,YEAR(GETDATE()-YEAR(birthday)asagefromStudent-7.查询所有姓王或姓黄的学生的、生日和所在班级名称。selectstudentName,birthday,classnamefromStudent,ClasswhereStudent.classNo=Class.classNoand(studentNamelike王%orstudentNamelike黄%

8、);-8.查询先修课程为数据构造的所有课程。selecta.courseno,a.coursenamefromCoursea,Coursebwherea.priorCourse=b.courseNoandb.courseName=数据构造;-9.查询信息管理学院非汉族同学的*、性别及民族。selectstudentNo,studentName,se*,nationfromStudent,ClasswhereStudent.classNo=Class.classNoandinstitute=信息管理学院andnation!=汉族;-10.查找选修了操作系统的学生*、成绩和。selectstude

9、nt.studentNo,studentname,ScorefromStudent,course,ScorewhereStudent.studentNo=score.studentNoandCourse.courseNo=score.courseNoandcourseName=操作系统;-11.查找至少选修了一门其直接先修课编号为004的课程的学生*和。selectscore.studentno,studentnamefromStudent,Course,ScorewhereStudent.studentNo=score.studentNoandscore.courseNo=Course.co

10、urseNoandpriorCourse=004;-12.查找至少选修了*为0800001的学生所选课程的学生*和。selectscore.studentno,studentnamefromScore,studentwherescore.studentNo=Student.studentNoandcourseNo=all(selectcoursenofromScorewherestudentNo=0800001)-13.查询出生日期在年以后的学生的*、籍贯和年龄。selectstudentno,studentName,native,YEAR(GETDATE()-YEAR(birthday)as

11、agefromStudentwhereYEAR(birthday)1991;-14.在student表中查询学生的*、和平均成绩,并按照平均成绩的降序排列。selectscore.studentno,studentName,AVG(score)asavgscorefromStudent,ScorewhereStudent.studentNo=score.studentNogroupbyscore.studentNo,studentNameorderbyavgscoredesc;-15.查找了选修了以C语言程序设计为其直接先修课的课程的学生*、课程号和成绩。selectstudent.stude

12、ntNo,score.courseNo,scorefromstudent,score,Coursewherestudent.studentNo=score.studentNoandscore.courseNo=Course.courseNoandCourse.courseNo=(selecta.courseNofromCoursea,Coursebwherea.priorCourse=b.courseNoandb.courseName=C语言程序设计);-16.在score表中查询平均成绩大于80的学生的*、课程号和成绩,并先按照课程号的升序、再按照成绩的降序排列。select*fromSco

13、rewherestudentNoin(selectstudentNofromScoregroupbystudentNohavingAVG(score)80)orderbycourseNo,scoredesc;-17.查找信息管理学院学生选课情况,显示学生、课程名和成绩。selectstudentName,courseName,scorefromStudent,Course,Score,classwhereStudent.studentNo=score.studentNoandCourse.courseNo=score.courseNoandStudent.classNo=Class.class

14、Noandinstitute=信息管理学院;-18.统计student表中的男女学生的人数。selectse*,count(*)as人数fromStudentgroupbyse*-19.查询成绩最高分的学生的*、课程号和相应成绩。selectstudentNo,courseno,scorefromScorewherescore=(selectMA*(score)fromScore);-20.查询选课少于门的学生的*及其选课的门数。selectstudentno,COUNT(*)as门数fromScoregroupbystudentnohavingcount(*)3-(2) 利用SQL语句进展表

15、的管理等操作。-1.给class表中的classname字段添加唯一约束。altertableclassaddconstraintuniqueClassnameunique(classname);-2.给Student表中的se*字段添加检查约束。altertablestudentaddconstraintchkSe*check (se*in(男,女);-3.建立学生会表StudentUnion,包含三个字段:编号SIDchar(2),studnetName (varchar(20),职务post(char(15)。createtablestudentUnion(sidchar(2)prima

16、rykey,studentnamevarchar(20),postchar(15);-4.为StudentUnion表插入两条数据,小勇,学生会主席, ,吴敏,文艺部长insertintostudentUnionvalues(1,小勇,学生会主席);insertintostudentUnionvalues(2,吴敏,文艺部长);-5.在上题中建立的表StudentUnion中增加一个字段(char(8),为列添加检查约束,要求每个新参加或修改的为位数字。altertablestudentUnionaddtelephonechar(8);-6.为StudentUnion表增加一个字段地址varchar(50)。altertablestudentUnionaddaddressvarchar(50);-7.在表StudentUnion中给地址字段添加一个默认约束,默认值为独墅湖高教区仁爱路号。altertablestudentUnionaddconstraintdefaultAdddefault独墅湖高教区仁爱路号foraddress;-8.把字段职务post的数据类型改为varchar(15)。altertablestudentUnionalterc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论