设学生S、课程C、学生选课SC的关系模式分别为:
S(Sno,Sname,Sage,Saddr)、C(Cno,Cname,Pcno)以及SC(Sno,Cno,Grade)与关系代数表达式πSno,Sname,Gr(βSname=’数据库’(S|×|SC|×|C))等价的元组演算表达式为:
(35) S(u)∧SC(v)∧C(w)∧ (36) ∧ (37)
(37)处填()。
A.t[1]=u[1]∧t[2]=u[2]∧t[3]=v[3]
B.t[1]=u[1]∧t[2]=u[2]∧t[3]=v[2]
C.t[1]=u[1]∧t[2]=w[1]∧t[3]=v[2]
D.t[1]=u[1]∧t[2]=w[2]∧t[3]=v[3]
参考答案:A
解析:
本题考查的是关系代数运算和元组演算等价性方面的有关知识。
关系代数表达式πSno.Shame.Grade(σcname:’数据库’(S[*]SC[*]C))的含义为选取同时满足S.Sno=SC.Sno 且 SC.Cno=C.Cno且Cname=’数据库,条件的Sno、Sname和Grade。
(35)空的关系代数表达式涉及了3个关系S、SC、C,为了转换成等价的元组演算表达式,需要设置3个元组变量u、v、w,而且这3个元组变量只要用存在量词“刁”限定即可。([*]u)S(u))表示在S关系中存在一个元组,([*]v,)SC(v)表示在SC关系中存中一个元组,([*]w)C(w)表示在C关系中存在一个元组,这3个元组变量应满足S. Sno=SC.Sno且SC.Cno=C.Cno且Cname=“数据库”的条件。
(36)空中的u[1]对应的是S.Sno,v[1]对应的是SC,Sno,v[2]对应的是SC.Cno,w[1]对应的是C0Cno,w[2]对应的是C.Cname,所以 S.Sno=SC.Sno 且 SC.Cno=C.Cno且Cname=“数据库”等价于u[1] =v[1]∧v[2]=w[1]∧w[2]=“数据库”。
(37)空的结果集为Sno、Shame和Grade,而u[1]对应的是S.Sno, u[2]对应的是S.Sname,v[3]对应的是SC.Grade,所以对属性列Sno、 Sname和Grade的投影等价于t[1]=u[1]∧t[2]=u12]∧t[3]=v[3]。