若关系R、S如下图所示,则关系R与S进行自然连接运算后的元组个数和属性列数分别为(3和4);关系代数与关系代数表达式()等价。

自然连接是特殊的等值连接,执行逻辑为先对两个关系做笛卡尔积,再在所有同名属性上进行等值匹配,最后去除重复的同名属性列。计算自然连接结果时,元组个数由两个关系中同名属性值完全匹配的元组组合数决定,属性列数等于两关系属性总数减去同名属性的数量。在处理带位次的关系代数表达式时,要明确笛卡尔积后的列顺序是原关系属性的依次拼接,选择操作中的位次对应笛卡尔积结果的列序号,转换为命名式表达式时需将位次映射到对应关系的属性,若涉及同名属性必须用所属关系名限定;投影操作的位次同样对应笛卡尔积的列,转换时要明确投影的属性,同名属性需加关系名以避免语义歧义。此外,等值连接和自然连接存在区别:等值连接可在任意属性上设定等值匹配条件,且不会去除重复属性列,而自然连接仅针对同名属性做等值匹配并自动去重列。
本题考察的是自然连接的语义与笛卡尔积上带位次引用的选择与投影等价改写。
问题1:自然连接在同名属性 C、D 上做等值连接,并去掉重复同名列。R 能与 S 匹配的元组为:(6,3,1,5) 与 (1,5),(6,5,7,4) 与 (7,4),(6,3,7,4) 与 (7,4),共 3 个;连接后属性为 {A,B,C,D},共 4 列。
A选项 6 和 6:将匹配数和列数都夸大,错误。
B选项 4 和 6:列数不去重同名属性,错误。
C选项 3 和 6:元组数对,列数错,应为 4,错误。
D选项 3 和 4:符合自然连接定义,正确。
所以选 D
问题2:在 R×S 中列次序为 (R.A, R.B, R.C, R.D, S.C, S.D)。谓词 σ_{3=6} 即 R.C = S.D;投影 π_{1,4} 即取 R.A 与 R.D,因此应写为 π_{A, R.D}(σ_{R.C=S.D}(R×S)),选 C。
A选项:未限定同名列,表达式在 R×S 上歧义且与 3=6 不一致,错误。
B选项:谓词为 S.C=R.D(应为 R.C=S.D),错误。
C选项:谓词与投影均与位次等价,正确。
D选项:谓词为 S.C=S.D,与原式不等价,错误。
所以选 C。
