- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ch5_1包上的关系操作,ch包包,ch340各种平台驱动包,天语ch2c刷机包,touch3刷机包,gdch包装机,包含ch的单词,天语rouch2刷机包,新百伦998ch上脚图,网页上ch不见了
第5章 包上的关系代数 5.1 关系代数操作(1) 关系代数的传统定义 一个元组集合(即关系),能用来进行典型的基于关系的查询 集合上的五个操作:并、差、笛卡尔积、选择、投影 在这些基本操作上定义的附加操作,例如各种连接 关系代数的操作规则对于集合和包是不一样的 简单的说,包是以空间代价换取时间效率 所以对一般小例子来说,包的综合效率更高 但对实际应用中的数据库来说,用集合更加合理 5.1 关系代数操作(2) 关系中的集合操作 基本集合操作:并交差 应用到关系操作时,需要附加约束 属性列表和个属性类型必须一致 属性的排列顺序也要一致 原则上属性名也要对应一致,如果不一致,需要利用重命名操作处理 5.1 关系代数操作(3) 投影 只保留指定部分列 由于属性减少,元组可能会重值,进而合并,因此数目可能减少 投影操作对应的代数表达式 πA1,A2,…,An(R) 选择 该操作产生的新关系的元组必须满足条件C 结果关系和原关系的模式相同 对应的代数表达式 σC(R) 5.1 关系代数操作(4) (关系R和S)笛卡尔积 一个有序对的集合,有序对的第一个元素来自R,第二个元素来自S 一般地,笛卡尔积对应一个关系,其元组维度更大,个数更多 如果R和S有重名属性,则在结果中加前缀区分 连接操作 参与连接操作的一般是两个关系,且连接时相应的元组在某些方面具有一致性 连接分为三类 全连接即笛卡尔积 自然连接 θ连接 5.2 包上的关系操作(1) 集合运算(并、交、差)、投影、选择、乘积和连接都允许运算之前和之后元组重复。 对两个关系求并,集合方式要先合并再去重,而包方式只合并不去重,所以效率更高 投影操作后不去重 对后面要出现的聚集操作来说,只能用包方式,用集合方式的话会出现逻辑错误。 P122例5.3 :求投影后A属性的平均值 5.2 包上的关系操作(2) 包的并、交、差 设R和S是包,若元组t在R和S中分别出现n次和m次(这里的m和n可以是0),则: R ∪ S的包并操作结果中:元组t出现m+n次; R ∩ S的包交操作结果中:元组t出现 min (m, n)次; R-S的包差操作结果中:元组t出现 max(0, n-m)次; /减后为负数则取0 包的并、交、差举例:设关系R、S如下: 5.2 包上的关系操作(2) 集合上的包操作(文本框内容释义) 如果对两个集合R、S进行包方式的操作,则交和差的结果与集合方式运算一样 因为作为被处理对象的两个关系本身没有重复的元组,所以交或差之后结果中仍然没有重值元组 但对于并操作来说就不一样了,包规则操作后结果可能就不再是集合了 结论:并操作之前必须看清(答题)/声明(出题)是包方式还是集合方式 5.2 包上的关系操作(3) 关于包的代数定律 并运算的交换律对包和集合都成立 R∪S= S∪R 差运算对并的分配律只适用于集合而不能适用于包 (R∪S)-T= (R-T) ∪(S-T) 包的投影操作 和集合操作基本一致,只是不再需要去重 包的选择操作 也是不需要去重 例5.5 5.2 包上的关系操作(4) 包的笛卡尔积 一样,不去重 例5.6。 包的连接 自然连接 θ连接 P125 习题 5.1.1 5.1.4 a) h) 5.1.5 a) 5.3 关系代数的扩展操作(1) 1. 消除重复 清除包中的重复元素,只保留一个副本在关系中。 2. 聚集操作 独立于同一关系中的其它元组而对某些元组进行运算。 3. 分组 根据元组的值对他们在一个或多个属性上分组。 4. 排序 根据一个或多个属性对关系的元组来排序。 5. 扩展投影 以原有的列作为参数来计算,并产生新的列。 6. 外连接运算 连接运算的变体,它防止了悬挂元组的出现。 消除重复 将包转化为集合δ(R) 例5.8 聚集操作符 汇总或“聚集”关系中某一列出现的值 SUM用来产生一列总和,得到的是一个数字值。 AVG用来产生一列平均值,结果也是数字值。 MAX和MIN当用于数字值列的时候,产生的分别是这一列中最大的和最小的值;当应用于字符列的时候产生是字典序的最大者和最小者。 COUNT产生一列中的“值”的数目(并不一定指不同的值)。同样,COUNT应用于一个关系的任何属性时,产生的是这个关系的元组数,包括重复的元组。 分组 为什么要分组 分组是便于各分组中元组的聚集操作。 如何分组 算符γ的下标是一个元素的列表,其中每个元素是下列情况之一: ⑴是应用γ操作的那个关系的一个属性,这个属性是那些可以把R分组的属性其中之一。这个元素称为分组属性。 ⑵应用到关系的一个属性上的聚集操作符。为了在结果中对应此聚集,给属性一个名称,一个箭头
文档评论(0)