目前正在数据库课程和学习关系代数中,并就此声明与另一名学生进行辩论
/Project pizza (/Select age < 24 (Person ⋈ Eats))
这句话是否会回馈24岁以下的人吃的所有比萨饼?
架构在这里 -
Person (name, age, gender)
Frequents (name, pizzeria)
Eats (name, pizza)
Serves (pizzeria, pizza, price)
我的同事认为,因为我们正在投射披萨而且这个人的架构不包括披萨,它不会起作用。但是我相信,因为我们加入了人和吃,因此我们创造了一个新的关系,我们按照年龄来选择比萨饼。
答案 0 :(得分:2)
要获得正确答案,请简单评估表达式:
人/加入吃
将生成一张桌子,其中每个吃披萨的人都在场。它的架构现在是:
(姓名,年龄,性别,披萨)
现在你选择了。选择不会影响架构,因此其结果的架构是相同的。
现在你投射披萨了。架构很简单(披萨)。
所以你现在已经预测了24岁以下人们吃的比萨饼的名字。
是的,你是对的。 JOIN创建一个新表。
- dmg