- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验四 数据库简单查询
成绩: 批阅人: 赵强 实验地点: 技术中心803 实验日期: 2015.11.19 指导教师: 赵强
本组其他成员
实验目的和内容
实验目的:了解SQL Server 查询编辑器的使用方法,加深对SQL和Transact-SQL语言的查询语句的理解。掌握表的数据简单查询、数据排序和数据联结查询的SQL表达和查询分析操作方法。
实验内容:
简单查询实验
用SQL表达简单查询操作,包括投影、选择条件表达、数据排序和使用临时表等,通过SQL Server查询分析器输入,并显示正确结果。
(2)连接查询实验
用SQL表达连接查询操作,包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等,通过SQL Server查询分析器输入,并显示正确结果。
二、实验要求
1)简单查询实验在学生选课库中,用Transact-SQL语句表示下列操作,并通过查询分析器实现其数据查询操作: ( 求数学系学生的学号和姓名。 ( ( 求选修C1课程的学生学号和成绩,并要求对查询结果 按成绩的降序排列,如果成绩相同则按学号的升序排列。 ( 求选修课程C1且成绩在80~90之间的学生学号和成 绩,将成绩乘以系数0.8输出。 ( 求数学系或计算机系姓张的学生的信息。 ( 求缺少了成绩的学生的学号和课程号。
Transact-SQL语句表示下列数据连接查询操作,并在查询分析器中实验。 ( 查询每个学生的情况以及他(她)所选修的课程。 ( 求学生的学号、姓名、选修的课程名及成绩。 ( 求选修C1课程且成绩为90分以上的学生学号、姓名及成绩。 ( 查询每一门课的间接先行课(即先行课的先行课)。
三、实验步骤和方法
写出查询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 数据结构 C3 C3 C语言编程 C1 C4 软件工程 C6 C6 数据库 C2 C5 计算机文化 C7 高等数学 C8 概率统计 C9 C9 线性代数 C7 C10 力学
表8 选课表的实验数据
序号 学号 课程号 成绩 1 S1 C1 60 2 S2 C1 93 3 S3 C1 4 S4 C1 89 5 S1 C2 79 6 S2 C2 7 S3 C2 80 8 S4 C3 90 9 S1 C3 92 10 S2 C3 81 11 S1 C7 85 12 S4 C7 75
(1)简单查询实验
求数学系学生的学号和姓名。
T-SQL语句:SELECT 学号,姓名
FROM 学生
WHERE 所在系= 数学
求选修了课程的学生学号。
T-SQL语句:SELECT DISTINCT 学号
FROM 选课
求选修C1课程的学生学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同则按学号的升序排列。
T-SQL语句:SELECT 学号,成绩FROM 选课
WHERE 课程号=C1
ORDER BY 成绩DESC, 学号ASC
求选修课程C1且成绩在80~90之间的学生学号和成绩,将成绩乘以系数0.8输出。
T-SQL语句: SELECT 学号,成绩*0.8
FROM 选课
WHERE 课程号=C1AND 成绩BETWEEN 80 AND 90
求数学系或计算机系姓张的学生的信息。
T-SQL语句:SELECT*
FROM 学生
WHERE 所在系IN(数学,计算机)AND 姓名LIKE张%
查询结果
学号 姓名 年龄 性别 所在系 求缺少了成绩的学生的学号和课程号。
Transact-SQL语句:SELECT 学生,课程号
FROM 选课
WHERE 成绩IS NULL
文档评论(0)