【发布时间】:2017-11-11 05:45:15
【问题描述】:
这是工作表的架构 (人名、年龄、公司名称、等级)
现在我想要所有名为 megha 并且在 mtbank 公司工作的元组
我知道我可以这样做:
π personName, age (σ companyName="M&T Bank" and personName="megha"(works))
但是我们可以这样做吗:
π personname, age (σ personName="megha" (π personName, age (σ companyName="M&T Bank" (works)))
我们可以像这样在投影上应用选择吗?
【问题讨论】:
-
嗨。做什么,怎么样?请自行解释。您还没有说该代码应该做什么。对于“选择而不是投影”,以一种或另一种方式给出论点和/或您将如何处理这一点和/或教科书中的相关内容。给出你应该使用的关系代数版本的参考或定义。请阅读minimal reproducible example 和How to Ask 并采取行动并点击谷歌搜索“stackexchange 作业”。
-
嗨。您可以通过
@usernotifications 联系提问者、回答者或评论者。 (例如,告诉我您已编辑。)请在完成编辑帖子之前查看格式化的输出。您可以通过单击“已编辑”链接查看编辑。 (我刚刚再次格式化了你的代码。)“I”总是大写的。 PS请阅读我的最后评论。展示一些研究/努力。为什么你认为他们给出相同的结果?为什么你认为它们不同?另外,您似乎想问,这个特别的投影和选择/限制重新排序是否给出相同的答案。 -
对此的合理回答必须谈论 π 和 σ 的作用。为了让您根据他们的行为方式接受答案所说的内容,您必须同意他们行为方式的一些定义。所以你需要给出一些你理解的定义。否则答案必须猜测并希望您理解并接受他们的定义。
-
嗨。你的问题有所改善。但请注意,第二个查询中的外部
π personname, age没有效果。为什么会在那里?也许您以某种方式使用π与每个σ或σ连词;但您没有解释“像这样”是什么意思,那么我们该如何回答您的问题呢?我们可以讨论何时可以以相反的顺序进行投影和选择,但我们不知道这是否就是您想知道的全部内容。