实验七 T-SQL程序设的计.doc

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验七 T-SQL程序设的计

实验七 T-SQL程序设计(一) 一、实验目的 1、观察查询结果, 体会SELECT语句实际应用; 2、要求学生能够在查询分析器中使用SELECT语句进行简单查询; 3、通过对SELECT的使用,掌握SELECT语句的结构及其应用 4、熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。 二、实验要求 1、实验前做好上机实验的准备,针对实验内容,认真复习与本次实验有关的知识,完成实验内容的预习准备工作; 2、认真独立完成实验内容; 3、习后做好实验总结,根据实验情况完成总结报告。 三、实验准备 1、完成实验四和实验六,成功建立了基本表; 2、了解简单SELECT语句的用法; 3、比较熟悉查询分析器中的SQL脚本运行环境。 四、实验学时 2学时 五、实验指导 在众多的SQL语句中,SELECT语句是使用频率最高的一个。SELECT语句主要被用来对数据库进行查询并返回符合用户查询要求的结果数据集。 1、检索单个表中的所有数据 当查询没有限制条件时,不需要编写WHERE子名,此时返回或显示表中的所有数据,这是SELECT语句最简单的情况。 例7.1 检索stu表中的所有记录。 SELECT * FROM STU 2、用WHERE条件从句进行选择查询 一个数据表中存放着大量相关的记录数据。实际使用时,往往只需要其中满足要求的部分记录,这时就需要用到WHERE条件从句。 例7.2 查询班级为“计算机0203”的学生情况。 要返回stu表中班级为“计算机0203”的学生情况,语句如下: SELECT * FROM STU WHERE 班级=‘计算机0203’ 例7.3查询姓名中含有“红”字的学生情况。 返回学生表(STU)中姓名内含有“红”字的学生情况,语句如下: SELECT * FROM STU WHERE 姓名 LIKE‘%红%’ 3、用ORDER BY子名 一般存放在数据表中的记录是无法确定次序的。但返回的数据集进行排序是常有的事。可以通过ORDER BY子句对SELECT语句检索出来的数据按要求进行排序。 例7.4 查询出生年月在“1981-01-01”至“1982-05-01”之间的学生情况,并以出生年月按降序排列。 SELECT * FROM STU WHERE 出生年月 BETWEEN ‘1981-01-01’ AND ‘1982-05-01’ ORDER BY 出生年月 DESC 4、使用汇总数据 数据汇总是数据库应用程序的重要组成部分。SQL语句能将数据表中的数据按照一定规律和条件进行分类汇总,从而得到所需的统计结果。 GROUP BY子句把检索出来的记录按条件进行分组,HAVING子句对GROUP BY子句检索出来的记录进行约束和限制。 例7.5 统计学生表(STU)表中“计算机0203”的班级有多少人。 SELECT COUNT(*)计算机0203的人数 FROM STU WHERE 班级=’ 计算机0203’ 例7.6 统计学生成绩表(XSCJ)表中每门课程的最低分,最高分和平均分。 要统计每门课程的最低分,最高分和平均分,需要使用GROUP BY子名、MAX、MIN和AVG函数,可以使用下面的语句实现: SELECT 课程号,MIN(成绩)最低分,MAX(成绩)最高分,AVG(成绩)平均分FROM XSCJ GROUP BY 课程号 5、使用子查询 可以将一个完整的SELECT语句嵌套在其他的SQL语句中,构成子查询,它通常用于一个操作需要依赖于另一个检索到的数据的场合。 例7.7 检索有一门或以上功课不及格的学生的学号、姓名、专业、班级。 可以使用以下SELECT语句从学生成绩(XSCJ)表中返回有一门或以上功课不及格的学生的学号: SELECT 学号 FROM XSCJ WHERE 成绩60 GROUP BY 学号 HAVING COUNT(*)=1 因以上SQL语句返回的记录数可能多于一个,因此在子查询中需使用IN关键字,语句为: SELECT 学号,姓名,专业,班级 FROM STU WHERE 学号 IN ( SELECT 学号 FROM XSCJ WHERE 成绩60 GROUP BY 学号 HAVING COUNT(*)=1) 六、实验内容 ※ 还原实验六创建的姓名数据库,对其中的三张数据表执行以下查询 1、查询读者表中的所有信息 2、显示读者表中的借书证号、单位、姓名、性别信息 3、查询所有图书的总编号,书名,作者信息 4、查询图书表总编号,书名,作者信息,并将总编号列列名显示为“书号” 5、查询单价大于30的图书信息 6、查询谭浩强作者所编写书籍的书号和书名 7、查询女同学借书的信息 8、查询jim借书的时间 9、查询jim借书的书名、作者及单价信息 10、查询借阅“数据结构”的读者的

文档评论(0)

ayangjiayu1 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档