第第三章 的关系运算.ppt

  1. 1、本文档共60页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第第三章 的关系运算

四、关系代数表达式及其应用实例 6. 实例:用元组表达式形式表示下列查询 如果P1和P2是公式,在元组关系演算的公式中,存在下列等价转换规则: P1∧P2 ? ┐(┐P1∨┐P2) P1∨P2 ? ┐(┐P1∧┐P2) (?s)(P1(s)) ? ┐(?s)(┐P1(s)) (?s)(P1(s)) ?┐(?s) (┐P1(s)) P1?P2 ? ┐P1∨P2 4. 公式中变量的递归定义如下: ①每个原子公式是一个公式。其中的元组变量是自由变量; ②如果?1和?2是元组关系演算公式,则: ?1∧?2,?1∨?2,┓?1也是元组关系演算公式; ③若?是元组关系演算公式,则(?t)(?)也是元组关系演算公式; ④若?是元组关系演算公式,则(?t)(?)也是元组关系演算公式; ⑤在元组演算公式中,各种运算符的优先次序为: 括号,算术比较运算符,ョ, ?,? 、∧、∨ ⑥有限次地使用上述五条规则得到的公式是元组关系演算公式, 其他公式不是元组关系演算公式。 5. 用元组关系演算表达式表示关系运算 并: R∪S {t|R(t)∨S(t)} 差: R-S {t|R(t)∧?S(t)} 笛卡儿积:R×S {t|(?u)(?v)(R(u)∧S(v)∧t[1]=u[1]∧…∧ t[r]=u[r]∧t[r+1]=v[1] ∧ …∧t[r+s]=v[s])} 投影:πi1,i2,…ik (R) {t|(?u)|R(u)∧t[l]=u[i1]∧…∧t[iK]=u[iK]}} 选择:σF(R) {t|R(t)∧F’} F’是F在元组演算中的等价表示形式。 例: 用元组表达式形式表示下列查询: 1.检索供应零件给工程J1,且零件编号为P1的供应商编号SNO。 {t|(?u)(SPJ(u)∧u[2]=‘P1’∧u[3]=‘J1’∧t[l]=u[1])} 2.检索使用了编号为P3零件的工程编号和名称。 {t|(?u)(?v)(J(u)∧SPJ(v)∧v[2]=‘P3’∧u[l]=v[3]∧t[l]=u[1] ∧t[2]=u[2])} {t|(?u)(?v)(SPJ(u)∧SPJ(v)∧u[3]=v[3]∧u[2]=‘P3’ ∧v[2]=‘P5’∧t[l]=u[3])} 3.检索至少使用了编号为P3和P5零件的工程编号JNO。 {t|(?u)(?v)(J(u)∧SPJ(v)∧((u[l]=v[3])? v[2]≠’P3’) ∧t[1]=u[1]∧t[2]=u[2])} 4.检索不使用编号为P3零件的工程编号JNO和工程名称SNAME。 5.检索使用了全部零件的工程名称JNAME。 {t|(?u)(?v)(?w)(J(u)∧P(v)∧SPJ(w)∧u[l]=w[3]∧v[1]=w[2] ∧t[1]=u[2])} {t|(?u)(SPJ(u)∧(?v)(SPJ(v)∧(v[1]=‘S1’?(?w)(SPJ(w) ∧w[3]=u[3]∧w[2]=v[2]))) ∧t[l]=u[3])} 6.检索使用零件包含编号为S1供应商所供应的全部零件的工程编号。 二、域关系演算 域演算表达式的定义类似于元组演算表达式的定义, 所不同的是公式中用域变量代替元组变量的每一个分量, 域变量的变化范围是某个值域而不是一个关系。 1、域演算表达式: 一般形式: {t1 t2…tk ∣P(t1,t2,…,tk )} 其中t1、t2、…、tk分别是元组变量t的各个分量的域变量, P是域演算公式。 ①原子公式有下列两种形式: i.R(t1…tk):R是K元关系,每个ti是域变量或常量。 ii.xθy,其中x,y是域变量或常量,但至少有一个是域变 量,θ是算术比较运算符。 ②域关系演算的公式中也可使用∧、∨、? 和=等逻辑运算符 也可用(?x)和(?x)形成新的公式,但变量x是域变量, 不是元组变量。 自由域变量、约束域变量等概念和元组演算中一样。 2.元组表达式到域表达式的转换规则: ① 对于k元的元组变量t , 引入k个域变量t1,t2,…,tk,

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档