我有这些表:
水手们 sid 名字分级年龄 --- ------ ------ --- 22 灰尘 7 45 31 约翰 8 55 58 本 10 35
船 投标名称颜色 --- ---------- ----- 101湖蓝 102湖畔红 103快船绿 104快船红
储量 投标日期 --- --- ---------- 22 104 2014 年 8 月 10 日 22 103 2014 年 7 月 5 日 58 103 2014 年 8 月 11 日 31 102 2014 年 8 月 11 日
我正在尝试找到sailors、sname和rating,他们同时预订了红色和绿色的 船,我需要用关系代数符号来写。
我试过这个:
文本版本,用于复制/参考目的:
R1 := 船 ⋈ 服务 R2 := σ color='红色' (R1) R3 := σ color='绿色' (R1) R4 := R2 ∩ R3 R5 := R4 ⋈ 水手们 R6 := π 名称,评级(R5)
有人告诉我这是错误的,但没有解释原因。有人可以向我解释问题是什么吗?
此行被标记为错误:
R4 := R2 ∩ R3
这确实是错误:
如果我们尝试获取您的解决方案的中间结果,我们将得到:
R1:
接着:
R2:(只有“红色”)
R3:(仅“绿色”)
R4
将是一个空的关系,因为没有什么可以同时是红色和绿色。当然,这不是练习所要求的。R4:
您需要做的是分别获取
R2'
和,以及和R3'
的投影,只有属性。然后将它们的交叉点取为:R2
R3
sid
R4