自考数据库系统原理(第4章)(代码:4735)练习题4

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

练习4

4.1 名词解释 1.过程性语言

编程时必须指出“干什么”及“怎么干”的语言,称为过程性语言。 2.非过程性语言

编程时只须指出“干什么”,不必指出“怎么干”的语言,称为非过程性语言。 3.无限关系

指元组个数为无穷多个的关系。 4.无穷验证

验证公式真假时需要进行无限次验证。

4.2 设有关系R 和S (表4.10):

计算R ∪S ,R -S ,R ∩S ,R ×S ,π3,1(S ),'6'C <ρ⋈(R),22

R S = ,R ⋈S ,

解:

R ∩S

R ∪S

R -S

R ×S

π

3,1(S )

4.3 设有关系R 和S (4.11),计算R ⋈S ,R ⋈1=1S ,σ3=6(R ×S )。

表4.11 关系R 和S

解:

22

R S

σC<’6’(R )

R ⋈S

4.5 假设R和S都是三元关系,试把表达式π2,5(σ1=6∨3=4(R×S))转换成等价的:

(1)汉语查询句子;

(2)元组表达式;

(3)域表达式。

解:

(1)汉语表达式:

1)对关系R和S做笛卡尔积;

2)在积的元组中选择满足下列条件的元组,元组的第1分量(R中第1分量)与元组的第6分

量(S中第3分量)值相等,或元组的第3分量(R中第3分量)与元组的第4分量(S中第

1分量)值相等;

3)最终结果由积元组的第2列与第5列组成。

(2)元组表达式:

第一步R×S

{t|(u)(v)(R(u)∧S(v)∧t[1]=u[1]∧t[2]=u[2]∧t[3]=u[3]∧t[4]=v[1]∧t[5]=v[2]∧

t[6]=v[3])}

第二步σ1=6∨3=4(R×S)

{t|(u)(v)(R(u)∧S(v)∧t[1]=u[1]∧t[2]=u[2]∧t[3]=u[3]∧t[4]=v[1]∧t[5]=v[2]}∧t[6]=v[3]∧(t[1]=t[6]∨t[3]=t[4]))}

第三步π2,5(σ1=6∨3=4(R×S))

{w|(u)(v)(R(u)∧S(v)∧t[1]=u[1]∧t[2]=u[2]∧t[3]=u[3]∧t[4]=v[1]∧t[5]=v[2]}∧t[6]=v[3]∧(t[1]=t[6]∨t[3]=t[4])∧w[1]=t[1]∧w[2]=t[6])}

最后简化,去掉t

{w|(u)(v)(R(u)∧S(v)∧(u[1]=v[3]∨u[3]=v[1])∧w[1]=u[1]∧w[2]=v[3])}

(3)域表达式:

{w1w2|(u1)(u2)(u3)(v1)(v2)(v3)(R(u1u2u3)∧S(v1v2v3)∧(u1=v3∨u3=v1)∧

w1=u2∧w2=v2)}

在进一步简化

{w1w2|(u1)(u3)(v1)(v3)(R(u1w1u3)∧S(v1w2v3)∧(u1=v3∨u3=v1))}

4.6假设R和S都是三元关系,试把元组表达式

{t|(u)(v)(R(u)∧S(v)∧u[2]≠v[2]∧t[1]=u[1]∧t[2]=v[3])}

转换成等价的:

①汉语查询句子;

②域表达式;

③关系代数表达式。

解:

①汉语查询句子

1)对关系R和S做迪卡儿积操作;

2)在迪卡儿积的元组中检索元组第二个分量不等于元组第五个分量的元组;

3)最终结果是由检索出的元组中的第一个分量和第六个分量找出。

②域表达式

{t1t2|(u1)(u2)(u3)(v1)(v2)(v3)(R(u1u2u3)∧S(v1v2v3)∧u2≠v2∧t1=u1∧t2=v3)} 进一步简化

{t1t2|(u2)(u3)(v1)(v2))(R(t1u2u3)∧S(v1v2t2)∧u2≠v2)}

③关系代数表达式。

п1,6(σ2≠5(R×S))

4.7试把域表达式{ab|R(ab)∧R(ba)}转换成等价的:

(1) 汉语查询句子;

(2) 关系代数表达式;

(3) 元组表达式。

解:

(1) 汉语查询句子:

选择R中元组第1分量值与第2分量值互换后仍存在于R中的元组。

(2)关系代数表达式:

π1,2(σ1=4∧2=3(R×R))

(3)元组表达式:

{t|(u)(R(t)∧R(u)∧t[1]=u[2]∧t[2]=u[1])}

4.8 设有关系R(A,B,C)和S(A,B,C),试把下列关系代数表达式转换成等价的元组表达式和域表达式:

①п2,3(R)

{t|(u)(R(u)∧t[1]=u[2]∧t[2]=u[3])} //根据书104P倒数第3行

{t1t2|(u1)(u2)(u3)R(u1u2u3)∧t1=u2∧t2=u3}

可简化为:

{t1t2|(u1)(R(u1t1t2))}

②σ2>3(R)

{t|(R(t)∧t[2]>t[3])} //根据书104P倒数第1行

{u1u2u3|(R(u1u2u3)∧u2>u3)}

③R∪S

{t|R(t)∨S(t)} //根据书104P倒数第7行

{u1u2u3|R(u1u2u3)∨S(u1u2u3)}

④R∩S

{t|(R(t)∧S(t)}

{u1u2u3|R(u1u2u3)∧S(u1u2u3)}

⑤R-S

{t|R(t)∧┐S(t)} //根据书104P倒数第6行

{u1u2u3|R(u1u2u3)∧┐S(u1u2u3)}

⑥π1,2(R)⋈π2,3(S)

{t|(∃u)(R(u)∧t[1]=u[1]∧t[2]=u[2])∧(∃v)(S(v)∧)}

{t1t2t3|(∃u1)(∃v1)(R(t1t2u3)∧S(v1t2t3))}

⑦R÷π3(S)

{t|(∃u)(∀v)(R(u)∧(S(v)∧u[3]=v[3]∧t[1]=u[1]∧t[2]=u[2]∧t[3]=u[3])}

{t1t2|(∃u3)(∀v1)(∀v2)(∀v3)(R(t1t2u3)∧S(v1v2v3))}

4.9 设有关系R(A,B)和S(A,C),试把下列域表达式转换成等价的关系代数表达式:

相关文档
最新文档