第8讲t-sql高级查询.pptVIP

  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文档。上传文档
查看更多
第8讲t-sql高级查询

第8讲 T-SQL高级查询 主要内容 8.1 使用表的别名 8.2 多 表 查 询 8.3 使用UNION子句 8.4 使用统计函数 8.5 使用GROUP BY子句 8.6 使用HAVING子句 8.7 使用COMPUTE和COMPUTE BY子句 8.8 使用嵌套查询 上一讲详细介绍了SELECT语句的基本组成部分,本次将更加深入地讨论该条语句的其他扩展内容,包括统计函数、多表查询、数据分组、嵌套查询等。 8.1 使用表的别名 当表的名称太长时,为了书写上的方便简单,在SQL语言的查询语句中可以定义表的别名。 命令格式: SELECT {table_alias.column}[,… n] FROM table_name [AS] table_alias [,… n] 命令说明: (1)table_alias 是表的别名。 (2)在一个SELECT 语句中,系统首先执行FROM子句,然后执行SELECT,所以一旦在FROM子句中定义了表的别名,尽管SELECT子句在FROM前面,也要使用别名。 (3)在一个定义了别名的SELECT 语句中,从FROM子句向后是依次执行的,因此,FROM后的每一个子句只有在其前面定义了别名后才能够并且只能够使用别名。别名的作用范围仅限于本T-SQL语句中,而其他独立的T-SQL语句无权使用这个别名。 8.2 多 表 查 询 如果希望从多个表中获取查询结果,例如从Student表中获取学生的姓名,从Score表中获取学生的成绩,那么就需要在多个表中选择和操作数据,这正是SQL的特色之一。 8.2.1 内连接 内连接(Inner Join)也叫自然连接,是指将另一个表内的行数据与本表内的数据相互连接,产生的结果行数取决于参加连接的行数,也就是说在将两个表中的指定列进行比较时,仅将两个表中满足连接条件的行组合起来作为结果集。在内连接中,只有在两个表中匹配的行才能在结果集中出现。 1.在WHERE子句中指定连接 在WHERE子句中可以使用比较运算符(=、、等)指定连接的条件。在两个表之间进行内连接的语法如下。 命令格式: SELECT select_list FROM table1, table2 WHERE table1.column1= table2. column2 命令说明: (1)select_list表示查询内容的列表。 (2)在FROM子句中指定查询数据的两个表table1与table2 ,表的顺序可以任意排列。 (3)在WHERE子句中指定了连接的条件,当使用“=”连接时,通常也称为等值连接,它只显示第一个表和第二个表中满足连接条件的数值。 2.使用JOIN和ON关键字指定连接条件 在使用SELECT语句时,还可以使用JOIN和ON关键字建立连接条件。 命令格式: SELECT select_list FROM table1 [INNER] JOIN table2 ON table1.column1= table2. column2 命令说明: (1)FROM 子句指定连接的两个表。 (2)[INNER] JOIN表示两个表的连接方式为内连接。INNER是默认方式,可以省略。 (3)ON 用于给出这两个表之间的连接条件。 8.2.2 外连接 1.左连接 所谓左连接,就是连接时主表在左,查询结果将保留左边表中的所有行(包括不满足连接条件的行)。左连接也有两种语法, 第一种是在WHERE子句中使用“*=”替代原来的“=” 。 第二种左连接的方式是使用符合ANSI语法的 LEFT JOIN 关键字 。 2.右连接 右连接,就是连接时主表在右,也就是说将保留右边表中不满足连接条件的行,同样它也有两种语法:一种是在WHERE子句中使用“=*”替代原来的“=”,另一种是在FROM从句中使用RIGHT JOIN关键字。 3.完全连接 使用完全连接(或称全外连接)方式将返回两个表的所有行。完全连接必须使用关键字 FULL OUTER JOIN。 8.2.3 连接两个以上的表 8.3 使用UNION子句 使用UNION子句的查询称为联合查询,它可以将两个或更多查询的结果集组合为一个单个结果集,该结果集包含联合查询中所有查询结果集中的全部行数据。联合查询不同于对两个表中的列进行连接查询,前者是组合两个表中的行,后者是匹配两个表中的列数据。 联合查询必须注意两个问题,首先是每一个查询结果集都必须与第一

文档评论(0)

精华文库 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:7111022151000002

1亿VIP精品文档

相关文档