跟我学Oracle数据库系统管理和实现——SQL 集合(联合)语法及应用实例.pdfVIP

跟我学Oracle数据库系统管理和实现——SQL 集合(联合)语法及应用实例.pdf

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

SQL 集合(联合)语法及应用实例 1、区分联合查询和连接查询的不同 (1)联合查询是对数据行的运算、而非对数据列的运算 1)如果有多个不同的查询结果数据集,但又希望将它们按 照一定的关系连接在一起,组成一组数据,这时就可以 使用集合运算来实现。 2)对多个Select语句的返回结果可进行各种形式的集合操 作或者称为对关系的集合运算,最终达到对结果的各种 形式的合并操作。 (2)连接查询是对两个数据库表中的数据列的运算 正是由于联合查询是对数据行的运算,因此对多个表的字 段有一定的要求——比如数据类型或者字段顺序等方面。 2、典型的二个数据库表记录的UNION (并集)运算的图示 例 假定有两个数据库表tableOne和tableTwo,其包含的列和 各个列所对应的数据分别如下表所示。 (1)tableOne数据库表 (2)tableTwo数据库表 (3)对两个数据表进行并集运算 由于tableOne和tableTwo两个数据库表具有相同的数据列结构 (本示例的字段名和字段类型相同,但并不一定需要这样严格 的匹配条件),因此可以使用UNION运算符连接两个数据库表中 的记录集,得到的连接结果如下表所示(UNION用于获得两个 结果集合的并集,并自动去掉重复行;而UNION ALL用于获得两 个结果集合的并集,但不会自动去掉重复行)。 3、联合查询主要的类型——各种联合查询的主要功能特性 (1)union [all] 并集 1)union和union all关键字都是将两个结果集合并为一个, 但这两者从使用和效率上来说都有所不同。 2)其中union是除掉重复的记录,所以在数据库表链接后 会对所产生的结果集进行排序运算——以第一列的结果 进行排序; 3)而union ALL则不除掉重复的记录—— union all只是 简单的将两个结果合并后就返回,因此union all的效 率比较高。 4)由于union all 要比union快很多,所以,如果可以确 认合并的两个结果集中不包含重复的数据,那么就应该 使用union all。 (2)intersect交集 在查询结果中只返回各个结果中都存在的相同数据行的部分 信息。 (3)minus差集 返回在第一个查询结果中与第二个查询结果不相同的那部分 数据行的记录数据。 (4)并集、交集和差集的功能说明 比如有A和B两个集合,其中集合A:{1 3 5 6 9}、而集合 B:{2 3 4 5}。则并集、交集和差集的功能示例如下: A union B={1 2 3 4 5 6 9} A union All B={1 3 5 6 9 2 3 4 5} A intersect B={3 5} A minus B={1 6 9} B minus A ={2 4} 但要注意的是:“A minus B”是不同于“B minus A”。 4、union并集应用示例 (1)基本要求 在union用法中的两个select语句后的字段的数据类型要求 匹配(或者必须兼容——可以在两种数据类型之间进行隐式数 据转换,或者可以提供显式转换),而且字段的个数和顺序也 要相同(但字段名称可以不同)。 (2)union并集的示例 示例结果中的第3条记录其实为“合同信息表”中的“合同 编号”和“合同签订者的姓名”,但与“客户信息”合并后也 全部转换为客户信息。 使用UNION运算符得到的结果集中,列名最终是采用与 UNION运算中第一个SELECT语句(本示例为select customer_ID,customer_name from customer_info)的结果集 中的列名相同,其他的SELECT语句的结果集列名将被忽略。 5、union all 并集应用示例 6、intersect交集应用示例 (1)intersect是交集 1)union基本上是一个 OR (如果这个值存在于第一句或是 第二句,它就会被选出),而 intersect则比较像 AND ( 这个值要同时存在于第一句和第二句时才会被选出)。 2)也就是union实现的效果是联集,而intersect实现的效

您可能关注的文档

文档评论(0)

czy2014 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档