与员工3相同部门员工的关系代数符号

时间:2012-10-11 07:03:23

标签: database relational-algebra

有人请解释一下

ρ emp2.surname,emp2.forenames (
    σ employee.empno = 3 ^ employee.depno = emp2.depno (
        employee × (ρemp2employee)
    )
)

1 个答案:

答案 0 :(得分:1)

查询将“员工#3”与另一名“员工”联系起来,因为他们都在同一个部门。因此,您需要两个员工列表(ahem,表)。由于您有两个相同的实例,因此您需要别名(技术上重命名)至少其中一个。两个表之间最通用的关系是笛卡尔积。因此,既然您构建了笛卡尔积,那么您必须将a)中的员工限制为#3,以及b)属于同一部门的两个表中的员工。最后一步是仅选择与所提问题相关的员工属性。