【发布时间】:2020-06-24 20:27:44
【问题描述】:
我有这些关系方案:
Participate (FestivalName, Artist)
Attend(ID, FestivalName)
Prefer (ID, FestivalName)
Like (ID, Artist)
我想列出只参加节日的人 不是他们的偏好,同时,在其中之一 节日,至少有两位他们喜欢的艺术家参加(所以,2 或 更多的)。最后,出示身份证和节日。
我想通过使用通用运算符来解决这个问题:
selection operator, projection operator, union operator, difference operator and cartesian product
这是一个例子:
ATTEND TABLE
147|HannaBalusa |
147|FestivalTOP |
147|BestFestival|
PREFER TABLE
147|FestivalTOP|
LIKE TABLE
147|PaulMackarney|
147|BobDeylan |
PARTICIPATE TABLE
HannaBalusa |PaulMackarney |
HannaBalusa |BobMurley |
FestivalTOP |BobDeylan |
BestFestival|PaulMackarney |
BestFestival|BobDeylan |
所以,我应该得到这个输出:
147|BestFestival
我可以通过使用 SQL 来解决这种情况,但是我在使用关系代数时遇到了麻烦。
可以帮助我吗?
【问题讨论】:
-
How to Ask Why is “Can someone help me?” not an actual question? How do I ask and answer homework questions? What is the policy here on homework? 展示你能做的部分。 Re relational querying. PS 有很多 RA(关系代数)。它们在运算符甚至关系是什么方面都不同。提供运算符定义和您的参考。