计算机软件技术基础实验报告-2_第1页
计算机软件技术基础实验报告-2_第2页
计算机软件技术基础实验报告-2_第3页
计算机软件技术基础实验报告-2_第4页
全文预览已结束

下载本文档

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

文档简介

山东建筑大学实验报告学院:信电学院班级:姓名:学号:课程:计算机软件技术基础实验日期:2013年11月22日成绩:实验七SQL简单查询、连接查询和子查询一、实验目的1.掌握在查询分析器中使用SELECT语句进行简单查询。2.熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。3.熟练掌握数据查询中的分组、统计、计算和组合的操作方法。4.观察查询结果,体会SELECT语句实际应用二、实验用软件和工具1.计算机。实验软件VC++6.02.SQLServer2005软件。三、实验步骤1简单查询操作此部分查询包括投影、选择条件表达、数据排序、使用临时表等。对EDUC(shiyan6)数据库实现以下查询:(1)求信电学院的学生学号和姓名;(2)求选修了课程的学生学号;(3)求选修C1课程的学生学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同则按学号的升序排列;(4)求选修课程C1且成绩在80-90之间的学生学号和成绩,并将成绩乘以系数0.75输出;(5)求计算机系和数学系的姓张的学生的信息;(6)求缺少了成绩的学生的学号和课程号。2连接查询操作对EDUC(shiyan6)数据库实现以下查询:(1)查询每个学生的情况以及他(她)所选修的课程;(2)求学生的学号、姓名、选修的课程名及成绩;(3)求选修C1课程且成绩在90分以上的学生学号、姓名及成绩;(4)查询每一门课的间接先行课。3.子查询操作,在数据库EDUC(shiyan6)中实现查询:(1)求选修了高等数学的学生学号和姓名;(2)求C1课程的成绩高于张三的学生学号和成绩;(3)求其他系中比计算机系某一学生年龄小的学生信息(即求其它系中年龄小于计算机系年龄最大者的学生);(4)求其他系中比计算机系学生年龄都小的学生信息;(5)求选修了C2课程的学生姓名;(6)求没有选修C2课程的学生姓名;(7)查询选修了全部课程的学生的姓名;(8)求至少选修了学号为“S2”的学生所选修的全部课程的学生学号和姓名。4.使用子句的查询操作,在数据库EDUC(shiyan6)中实现查询:(1)求学生的总人数。(2)求选修了课程的学生人数。(3)求课程的课程号和选修该课程的人数。(4)求选修课超过3门课的学生学号四、实验程序与程序运行结果1实验准备建立基本表,打开基本表,添加如下数据。实验数据snosnamesexsageSdept1101张楠男21CS1102李勇男20CS1103王婷女19CS2101田依女19MS2102张亮男20MS2103齐军男21MS3101刘晨男18IS3102王敏女20IS3103张立男21IScnospnocnamecredit101105数据库原理3102高等数学3103101信息系统3104106操作系统3105107数据结构3106数据处理3107106PASCAL语言2snocnoscore11011017311011061103101822102101752102102912102106702查询操作实现参考1简单查询操作此部分查询包括投影、选择条件表达、数据排序、使用临时表等。对EDUC(shiyan6)数据库实现以下查询:(1)求信电学院(IS)的学生学号和姓名;selectsno,snamefromstudentwheresdept='IS'(2)求选修了课程的学生学号;selectsnofromstudent_coursewherecnoISNOTNULL(3)求选修101课程的学生学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同则按学号的升序排列;selectsno,scorefromstudent_coursewherecno='101'ORDERBYscoreDESC,sno(4)求选修课程101且成绩在80-90之间的学生学号和成绩,并将成绩乘以系数0.75输出;selectsno,score*0.75fromstudent_coursewherecno='101'AND(score<=90ANDscore>=80)(5)求计算机系(CS)和数学系(MS)的姓张的学生的信息;代码如下:SELECT*FROMstudentwhere(sdept='CS'ORsdept='MS')ANDsnameLIKE'张%'(6)求缺少了成绩的学生的学号和课程号。SELECTsno,cnoFROMstudent_coursewherescoreISNULL2连接查询操作(1)查询每个学生的情况以及他(她)所选修的课程;SELECTstudent.sno,sname,sex,sage,sdeptFROMstudent,student_coursewherestudent_course.sno=student.sno(2)求学生的学号、姓名、选修的课程名及成绩;SELECTstudent.sno,sname,ame,student_course.scoreFROMstudent,course,student_coursewherestudent_course.sno=student.snoandstudent_o=o(3)求选修102课程且成绩在90分以上的学生学号、姓名及成绩;SELECTstudent.sno,sname,scoreFROMstudent,student_courseWHEREcno='102'ANDscore>90andstudent_course.sno=student.sno(4)查询间接先行课。SELECTo,second.spnoFROMcoursefirst,coursesecondWHEREfirst.spno=oandsecond.spnoisnotNULL4.使用子查询操作,在数据库EDUC(shiyan6)中实现查询:(1)求选修了高等数学的学生学号和姓名;代码如下:SELECTstudent.sno,snamefromstudent,course,student_coursewherestudent.sno=student_course.snoANDstudent_o=oANDame='高等数学'(2)求101课程的成绩高于张楠的学生学号和成绩;代码如下:SELECTDISTINCTstudent_course.sno,scorefromcourse,student_course,studentwherestudent_o='101'ANDscore>SOME(SELECTscorefromstudent_coursewherestudent.sname='张楠')(3)求其他系中比计算机系某一学生年龄小的学生信息(即求其它系中年龄小于计算机系年龄最大者的学生)SELECT*FROMstudentwheresage<some(selectmax(sage)fromstudentwheresdept='CS')(4)求选修了102课程的学生姓名;selectsnamefromstudentwheresnoi

温馨提示

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

评论

0/150

提交评论