【发布时间】:2013-01-22 16:08:24
【问题描述】:
您好,在我的考试修订中,我选择了以下关系代数示例问题:
employee (+person_name, street, city)
works (+person_name, company_name, salary)
company (+company_name, city)
manages (+person_name, manager_name)
+ indicate the underlined primary keys
-
查找与其经理居住在同一城市和同一条街道上的所有员工的姓名
MY solution JOIN manages and employee (OVER person_name) GIVING T1 JOIN manages and employee (OVER manager_name) GIVING T2 PROJECT T1 over person_name, street, city GIVING T3 PROJECT T2 over street, city GIVING T4 T3 intersect T4 GIVING T5 PROJECT T5 over person_name GIVING RESULT
这是我的解决方案,直到我发现交集必须是联合兼容的(匹配的列数及其标题)
从那以后,我真的找不到解决这个问题的方法,因为如果我对第 3 行进行以下更改
PROJECT T1 在街道上,城市 GIVING T3
那么我将永远没有机会将交集的结果链接回 person_name。
另一方面,当我对第 4 行进行以下更改时:
项目 T2 超过 person_name、街道、城市 GIVING T4
然后在十字路口,我永远不会找到一个除了他自己还有其他经理的人。
我将不胜感激任何提示,也许我拿起的这个在线示例非常模棱两可。
【问题讨论】:
标签: intersection relational-algebra