若关系模式R和S分别为:R(A,B,C,D),S(B,C,E,F),则关系R与S自然连接运算后的属性列有( )个,与表达方式π
1,3,5,6(σ
3<6(R⋈S))等价的SQL语句为:
SELECT ( ) FROM R , S WHERE ( );
问题1选项
A.4
B.6
C.7
D.8
问题2选项
A.A,R.C,E,F
B.A,C,S.B,S.E
C.A,C,S.B,S.C
D.R.A,R.C,S.B,S.C
问题3选项
A.R.B=S.B AND R.C=S.C AND R.C<S.B
B.R.B=S.B AND R.C=S.C AND R.C<S.F
C.R.B=S.B OR R.C=S.C OR R.C<S.B
D.R.B=S.B OR R.C=S.C OR R.C<S.F
第1题:
本题考查关系代数运算与SQL查询方面的基础知识。
第一空的正确答案为选项B。自然连接R⋈S是指R与S关系中相同属性列名的等值连接运算后,再去掉右边重复的属性列名S.B、S.C,所以经R⋈S运算后的属性列名为:R.A、R.B、R.C、R.D、S.E和S.F,共有6个属性列。
第二空的正确答案为选项A。π1,3,5,6(σ3<6(R⋈S))的含义是从R⋈S结果集中选取R.C<S.F的元组,再进行R.A、R.C、S.E和S.F投影,故选项A是正确的。
第三空的正确答案为选项B。“R,S”表示的是对这2个表进行多表查询,结果是等价于笛卡尔积的,这里并不能直接表示自然连接,我们需要先把自然连接转换为笛卡尔积才能进行分析,自然连接转换为笛卡尔积时,需要对这2个关系的同名属性列做等值连接,故需要用条件“WHERE R.B=S.B AND R.C=S.C”来限定;又由于在关系表达式中经自然连接R⋈S运算后,去掉了右边重复的属性列名S.B、S.C,使得第三列属性列名和第六列属性列名分别为R.C、S.F,所以选取运算σ3<6需要用条件“WHERE R.C<S.F”来限定。
第2题:
第3题: