- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库系统基础教程(4-5)[书上2.4简单查询关系代数作为前半部分 第五章作为4后半部分]
第四章 其它数据模型 其它数据模型: 层次模型和网状模型 ODL模型 对象关系模型 第五章 关系代数 主要解决问题: 在关系模式设计已确定的前题下,在这些关系上可进行哪些运算?得到怎样的新关系? 关系操作有两种不同的表示方式:代数的和逻辑的。 关系代数不仅可以表示运算,也可表示对数据库的约束。 关系操作可在无重复元组的集合set上运算,也能在有重复元组的包bag上运算。 5.1 本章使用的数据库模式 Movie(title, year, length, inColor, studioName, producerC#) StarsIn(movieTitle, Movieyear, starName) MovieStar(name, address, gender, birthdate) MovieExec(name, address, cert#, netWorth) Studio(name, address, presC#) 5.2 关系代数 关系代数 Relational Algebra: 在关系模型上定义的一组标准运算,可由已知的关系计算得到新的关系。 注意:结果关系的属性是什么?结果关系中的元组是什么?各种运算的特征。 5.2.1 关系代数基础 关系代数中的运算(四大类 共九种): 一般集合运算:并、交、差(在两个相同模式的关系上进行) 删减运算:在一个关系上进行 投影:删去某些属性(列) 选择:删去某些元组(行) 合并运算:在两个关系之间进行 笛卡尔积:两个关系中所有元组的所有可能的组合(无条件)。 连接:两个关系中的元组有条件的组合。 自然连接 笛卡尔积加投影和选择运算 θ连接 笛卡尔积加选择运算 改名:在一个关系上进行,改变关系或属性的名字,而不影响其中元组。 5.2.2 集合运算 对于两个关系R和S,存在的集合运算: R∪S:并,由R或S中的元组构成的集合。 注意同一元组只出现一次。 R∩S:交,由属于R且属于S的元组构成的集合。 R—S:差,由属于R且不属于S的元组构成的集合。 注意:前两者可交换,差运算不能交换。 集合运算所需的条件: R和S的模式具有相同的属性集; R和S应具有相同的属性次序。 5.2.2 集合运算 5.2.3 投影 投影运算: 对于一个关系 R,投影产生一个新关系,只包含 R 属性集的一个子集。 表示为:∏ A1,A2,…,An(R) 结果属性为 {A1,A2,…,An} 结果元组由 R 中元组在属性{A1,A2,…,An}上的分量构成 ,元组不重复。 关系分解时使用。 5.2.3 投影 5.2.4 选择 选择运算: 对于一个关系 R,选择产生一个新关系,只包含满足特定条件的元组。 表示为:бc(R) ,其中c是结果关系中每个元组都要满足的条件。 结果属性:保持R属性集且属性次序也相同。 结果元组:R中满足条件c的元组。 条件的表示: 运算对象:属性名和常量 算术比较运算:= ≠ > ≥ < ≤ 逻辑运算:NOT AND OR 5.2.4 选择 5.2.5 笛卡儿积 笛卡儿积运算: 对于关系R和S,笛卡尔积表示为:R×S。 结果属性:属性集是R和S属性集合的并集。 区别R和S中的同名公共属性:“关系名. 属性名”。 结果元组:是R中的每个元组与S中每个元组的组合。 元组数量是 NR×NS。 5.2.5 笛卡儿积 5.2.6 自然连接 自然连接运算: 对于两个关系R和S,自然连接表示为R S (R∞S也可) 结果属性:是R和S中的属性的并集,去掉同名的公共属性。 结果元组:是R和S在同名公共属性上一致的元组的组合。 确切说,设A1,A2,…,An是R和S的公共属性,当且仅当R的元组r与S的元组s在A1,A2,…,An上都一致时,元组s和r组合成为R S的一个元组,称为一个连接元组。 5.2.6 自然连接 5.2.6 自然连接 5.2.6 自然连接 例:设有关系: 学生(学号,姓名,班级) 选修(学号,课号,成绩) 要求查询学生’张平’的各科成绩。 б姓名=’张平’(学生 选修) 或 б姓名=’张平’(学生) 选修 5.2.7 θ连接 θ连接运算 : 在笛卡尔积的基础上,增加条件以限制元组。 对于两个关系R和S,基于条件c的θ连接表示为 R c S,计算步骤: 计算R × S ,即笛卡尔积; 用条件c做选择运算:бc (R × S)。 5.2.7 θ连接 5.2.8 复合运算(组合操作) 由于关系运算的结果仍为关系,因而可对之作进一步的关系运算。 复合运算:把两种以上运算组合起来成为一个表达式,以完成较复杂
文档评论(0)