我正在进行关系代数查询的考试修订,其中一个示例问题我与示例问题答案相比有不同的方法。如果有人能给我一个小费是否有效,我真的很感激?如果不是我的方法有什么问题,谢谢。
来自以下实体:
部门(*部门名称,员工人数,地点)
部门 - 工作人员(*部门名称,*工作人员 - 否)
工作人员(*员工编号,员工姓名,工资等级,薪水)
我被要求: 查找在FOREIGN EXCHANGE和INSURANCE部门工作的员工的姓名。
我的方法:
RESTRICT Department-Staff WHERE dept-name = 'Foreign Exchange' GIVING T1
RESTRICT Department-Staff WHERE dept-name = 'Insurance' GIVING T2
T1 intersect T2 giving T3
JOIN T3 and Staff (OVER Staff-no) giving T4
PROJECT T4 over Staff-name giving RESULT
同时在示例问题回答中:
RESTRICT DEPARTMENT-STAFF where DEPT-NAME = 'FOREIGN EXCHANGE' giving T1
RESTRICT DEPARTMENT-STAFF where DEPT-NAME = 'INSURANCE' giving T2
JOIN T1 and STAFF (over STAFF-NO) giving T3
JOIN T2 and STAFF (over STAFF-NO) giving T4
T3 INTERSECT T4 GIVING T5
PROJECT T5 over STAFF-NAME GIVING RESULT
答案 0 :(得分:0)
您的T1 INTERSECT T2给T3错了。那个十字路口怎么可能包含任何东西?
模型答案是错误的,出于同样的原因,顺便说一句,它在T3 INTERSECT T4 GIVING T5的地方。