数据库简单查询_第1页
数据库简单查询_第2页
数据库简单查询_第3页
数据库简单查询_第4页
数据库简单查询_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

. 实验四 数据库简单查询 成绩:批阅人:赵强实验地点: 技术中心803 实验日期: 2015.11.19 指导教师: 赵强 本组其他成员 一、 实验目的和内容实验目的:了解SQL Server 查询编辑器的使用方法,加深对SQL和Transact-SQL语言的查询语句的理解。掌握表的数据简单查询、数据排序和数据联结查询的SQL表达和查询分析操作方法。实验内容:(1) 简单查询实验 用SQL表达简单查询操作,包括投影、选择条件表达、数据排序和使用临时表等,通过SQL Server查询分析器输入,并显示正确结果。(2)连接查询实验 用SQL表达连接查询操作,包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等,通过SQL Server查询分析器输入,并显示正确结果。二、实验要求1)简单查询实验在学生选课库中,用Transact-SQL语句表示下列操作,并通过查询分析器实现其数据查询操作: v 求数学系学生的学号和姓名。 v 求选修了课程的学生学号。 v 求选修C1课程的学生学号和成绩,并要求对查询结果 按成绩的降序排列,如果成绩相同则按学号的升序排列。 v 求选修课程C1且成绩在8090之间的学生学号和成 绩,将成绩乘以系数0.8输出。 v 求数学系或计算机系姓张的学生的信息。 v 求缺少了成绩的学生的学号和课程号。2)连接查询实验在学生选课库中,用Transact-SQL语句表示下列数据连接查询操作,并在查询分析器中实验。 v 查询每个学生的情况以及他(她)所选修的课程。 v 求学生的学号、姓名、选修的课程名及成绩。 v 求选修C1课程且成绩为90分以上的学生学号、姓名及成绩。 v 查询每一门课的间接先行课(即先行课的先行课)。三、实验步骤和方法写出查询Transact-SQL语句,对照学生-选课库中的测试数据(下表中,实验前先在库中补齐数据)找出查询结果。表6 学生表的实验数据学号姓名年龄性别所在系S1李明21男计算机S2张小红21男计算机S3李和明22女计算机S4张三21男计算机S5刘宏23男计算机S6王红应20女计算机S7吴非19男数学S8丁玉21男数学S9赵名21女数学S12张共可22男物理表7 课程表的实验数据课程号课程名先行课C1计算机引论C2数据结构C3C3C语言编程C1C4软件工程C6C6数据库C2C5计算机文化C7高等数学C8概率统计C9C9线性代数C7C10力学表8 选课表的实验数据序号学号课程号成绩1S1C1602S2C1933S3C1 4S4C1895S1C2796S2C2 7S3C2808S4C3909S1C39210S2C38111S1C78512S4C775(1)简单查询实验1) 求数学系学生的学号和姓名。T-SQL语句:SELECT 学号,姓名FROM 学生l WHERE 所在系= 数学l 查询结果: 2) 求选修了课程的学生学号。T-SQL语句:SELECT DISTINCT 学号l FROM 选课l 查询结果:3) 求选修C1课程的学生学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同则按学号的升序排列。T-SQL语句:SELECT 学号,成绩FROM 选课WHERE 课程号=C1ORDER BY 成绩DESC, 学号ASCl l 查询结果:4) 求选修课程C1且成绩在8090之间的学生学号和成绩,将成绩乘以系数0.8输出。T-SQL语句: SELECT 学号,成绩*0.8FROM 选课l WHERE 课程号=C1AND 成绩BETWEEN 80 AND 90l 查询结果: 5) 求数学系或计算机系姓张的学生的信息。T-SQL语句:SELECT*FROM 学生l WHERE 所在系IN(数学,计算机)AND 姓名LIKE张%l 查询结果:查询结果学号姓名年龄性别所在系6) 求缺少了成绩的学生的学号和课程号。Transact-SQL语句:SELECT 学生,课程号FROM 选课WHERE 成绩IS NULLll 查询结果:(2)连接查询实验7) 查询每个学生的情况以及他(她)所选修的课程。Transact-SQL语句:SELECT 学生.*,课程号.*FROM 学生, 选课WHERE 学生.学号=选课.学号ll 查询结果: 查询结果8) 求学生的学号、姓名、选修的课程名及成绩。T-SQL语句:use 学生_课程goselect 学生.学号,姓名,课程名,成绩from 学生,课程,选课where 学生.学号=选课.学号and 课程.课程号=选课.课程号gol 查询结果:查询结果学生.学号姓名课程名成绩2) 求选修C1课程且成绩为90分以上的学生学号、姓名及成绩。T-SQL语句:use 学生_课程goselect 学生.学号,姓名,成绩from 学生,选课where 学生.学号=选课.学号and 课程号=c1 and 成绩90gol 查询结果: l3) 查询每一门课的间接先行课(即先行课的先行课)。Transact-SQL语句:use 学生_课程go

温馨提示

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

评论

0/150

提交评论