代数和逻辑查询语言.ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 5 章 代数和逻辑查询 语言 主讲人:颜 颖 Email : yanying@hqu.edu.cn 2 主要内容 ? 5.1 包上的关系操作 ? 5.2 关系代数的扩展操作符 ? 5.3 关系逻辑 ? 5.4 关系代数与 datalog 3 什么是包 ? 包,也叫多集 (multi) :与集合不同,当关系是包时, 同一个元组可以在关系中多次出现。 ? 示例 A B 1 2 3 4 1 2 1 2 包允许重复元组 元组没有顺序 4 为什么采用包 ? 商业 DBMS 实现的关系都是包,而不是集合,重要的 原因是采用基于包的关系,一些关系操作的实现效率 会更好。例如: ? 两个包关系的并,只需将一个关系的所有元组复制 到另一个关系,而不必消除两个关系中的重复元组 ? 在集合关系上作投影时,需将每一个投影元组与所 有元组逐个比较,以确定每次投影只出现一次。而 如果接受包作为结果,就可以简单地投影每个元组 并将其加入结果中,无须比较,消除重复元组。 5 示例 ? 把如下关系投影到 A,B 属性上 集合 包 A B 1 2 3 4 1 2 1 2 A B C 1 2 5 3 4 6 1 2 7 1 2 8 A B 1 2 3 4 效率较高 求 A 的平均值 : (1+3)/2=2 与原来关系中 A 的平均值不符 求 A 的平均值: (1+3+1+1)/4=1.5 与原来关系中 A 的平均值相符 6 包的并、交、差 ? 假定 R 和 S 是包,其中元组 t 在 R 中出现了 n 次,在 S 中出 现了 m 次。注意:这里的 n 和 m 都可以是 0 。 ? 在 R ∪ S 的包并操作中,元组 t 出现 n+m 次 ? 在 R∩S 的包交操作中,元组 t 出现 min(m,n) 次 ? 在 R-S 的包差操作中,元组 t 出现 max(0,n-m) 次 ? 直观上, t 在 S 中的每次出现都抵消了它在 R 中的一次出现 7 示例 A B 1 2 3 4 1 2 1 2 A B 1 2 3 4 3 4 5 6 R S A B 1 2 3 4 1 2 1 2 1 2 3 4 3 4 5 6 A B 1 2 3 4 A B 1 2 1 2 A B 3 4 5 6 R ∪ S R∩S R-S S-R 8 包上的投影操作 包 A B 1 2 3 4 1 2 1 2 A B C 1 2 5 3 4 6 1 2 7 1 2 8 9 包上的选择操作 ? 在包上应用选择操作的时候,要独立对每个元组应用 选择条件,在结果中不去掉重复元组。 ? 示例: 如果 R 是包 A B C 1 2 5 3 4 6 1 2 7 1 2 7 包选择 ) ( 6 R C ? ? A B C 3 4 6 1 2 7 1 2 7 10 包的笛卡尔积 ? 一个关系中的每个元组跟另外一个关系中的每个元组 配对,而不管这个元组是不是重复出现。 ? 如果元组 r 在关系 R 中出现了 m 次,元组 s 在关系 S 中出 现了 n 次,那么元组 rs 在 R × S 中出现 m*n 次 11 示例 A B 1 2 1 2 R B C 2 3 4 5 4 5 S A R.B S.B C 1 2 2 3 1 2 2 3 1 2 4 5 1 2 4 5 1 2 4 5 1 2 4 5 R × S ? 同时属于 R 和 S 两个关系的属性 B ,在积中出现两次, 于是属性的前面要加上关系名的前缀 12 包的连接 ? 首先对比两个关系中的元组,看是不是能组成一对, 如果可以,这个配对起来的元组就是结果中的一员。 产生结果时,不需要去掉重复元组。 A B 1 2 1 2 R B C 2 3 4 5 4 5 S A B C 1 2 3 1 2 3 R S R R.BS.B S A R.B S.B C 1 2 4 5 1 2 4 5 1 2 4 5 1 2 4 5 13

文档评论(0)

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

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

版权声明书
用户编号:8140007116000003

1亿VIP精品文档

相关文档