数据库原理与SQLServer2012应用教程第2版教学课件ppt作者刘瑞新第8章数据查询课件.pptVIP

数据库原理与SQLServer2012应用教程第2版教学课件ppt作者刘瑞新第8章数据查询课件.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库原理与SQLServer2012应用教程第2版教学课件ppt作者刘瑞新第8章数据查询课件.ppt

8.7 存储查询结果 一般情况下,SELECT查询结果只是输出结果集,并不将数据添加到表中。但T-SQL提供了INTO关键字,可以将查询结果添加到表中存储。其语法格式如下: INTO new_table 说明:根据选择列表中的列和WHERE子句选择的行,指定要创建的新表名。new_table的格式通过对选择列表中的表达式进行取值来确定。new_table中的列按选择列表指定的顺序创建。new_table中的每列与选择列表中的相应表达式具有相同的名称、数据类型和值。 当选择列表中包括计算列时,新表中的相应列不是计算列。新列中的值是在执行SELECT…INTO时计算出的。 8.7 存储查询结果 【例8-44】 将计算机学院的男生的姓名、性别和学院名称添加到Stu表中。 USE COLLEGE GO SELECT Name,Sex,SchoolName INTO Stu FROM Student,School WHERE Student.SchoolID=School.SchoolID AND Sex=男 AND SchoolName=计算机学院 GO 将查询结果集添加到一个新创建的Stu表中存储。 8.7 存储查询结果 【例8-45】 统计各个省份的作者的人数,并将结果添加到Pro表中。 USE PUBLISH GO SELECT Provinces,count(*) AS 人数 INTO Pro FROM Author GROUP BY Provinces GO 由于新表中的第2列不是查询表原有的列,所以必须给该列命名别名。 8.1.3 连接 SQL连接方式又分为内连接、外连接、交叉连接。其语法格式如下: [ INNER | { LEFT | RIGHT | FULL } [ OUTER ] [ CROSS ][ join_hint ] JOIN 说明: 1)INNER表示内连接,是系统默认的连接方式。 2)OUTER表示外连接。外连接又分为左外连接(LEFT)、右外连接(RIGHT)、完全外连接(FULL)。左外连接的结果集中除了包括满足条件的行外,还包括左表所有的行。右外连接的结果集中除了包括满足条件的行外,还包括右表所有的行。完全外连接的结果集中除了包括满足条件的行外,还包括左右两表所有的行。 3)CROSS表示交叉连接,又称为自然连接,即生成一个笛卡尔积。 4)join_hint表示外连接提示。 8.1.3 连接 【例8-22】 查询学生选修的课程的情况,输出学号和课程名,如果有课程没有学生选修,也输出。 USE COLLEGE GO SELECT StudentID,CourseName FROM Course LEFT JOIN Mark ON Course.CourseID=mark.CourseID GO 本例使用了左外连接,将满足条件的学生的学号和课程名输出。如果Course表中还有不满足条件的记录也输出,但在StudentID列中以NULL值输出,表示此门课程没有学生选修。 8.1.3 连接 【例8-23】 查询学生选修课程的情况,输出姓名和课程号,如果有学生没有选修课程,也输出。 USE COLLEGE GO SELECT Name,Mark.CourseID FROM Mark RIGHT JOIN Student ON Mark.StudentID=Student.StudentID GO 本例使用了右外连接,将满足条件的学生的姓名和课程号输出。如果学生表中还有不满足条件的记录也输出,但在CourseID列中以NULL值输出,表示此学生没有选修任何课程。 8.1.3 连接 【例8-24】 查询所有学生选修所有课程的情况。 USE COLLEGE GO SELECT Name,CourseName FROM Student CROSS JOIN Course GO 本例使用了交叉连接,生成一个由Student表和Course表组成的笛卡尔积。 【例8-25】 自连接。 USE COLLEGE GO SELECT a.CourseID,a.Score FROM Mark a JOIN Mark b ON a.StudentID=b.StudentID GO 自连接时,必须给表分别起别名加以区分。 T-SQL提供的这两种连接方式,一般用户习惯使用传统连接方式,除非是外部连接和交叉连接,因为传统连接方式的语法简单。 8.2 数据汇总 在对表数据进行查询时,经常需要对结果进行汇总计算。T-SQL提供了聚合函数对数据进行计算。 【例8-26】 统计选修了102号课程的学生的总分、平均分、最高分和最低分。 USE COLLEGE GO SELECT SUM(Score) AS

文档评论(0)

带头大哥 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档