【问题标题】:Updating in relational algebra更新关系代数
【发布时间】:2017-01-25 11:09:10
【问题描述】:

简单的问题:假设我们有一个关系 Human(name, age, height, weight)。我知道如果我想更新一个属性,例如整个关系的年龄,然后是 Human

【问题讨论】:

  • “关系代数”的大多数变体(好像只有一个)没有 PROJECT 与您的 SQL 类似的功能,除了删除列。因此,如果您要映射到“关系代数”,请确保您找出这对您的作业意味着什么。

标签: relational-algebra


【解决方案1】:

您通过 MINUS 删除要修改的 WHERE 选择的元组,然后将修改后的元组 UNION。

人类

【讨论】:

  • 所以,在联合操作之后,我应该把你所做的完全写下来,或者用特定的文本替换它,比如...U π {("John",20,190,150)}?
  • 我们被告知在关系代数中更新时使用广义投影,所以我有点困惑,因为你没有使用它,所以看起来我不必使用它全部。
  • 我确信他们的意思是,“在更新某些列的所有值时(即为了特定效果)使用广义投影”。每个运算符产生一个从输出转换而来的输入。如果您在某个时候需要一个值,为什么要应用运算符?赋值将变量设置为一个值。投影和分配之间没有特别的联系。 PS我的答案会更新年龄,但其他值保持不变,当然,与您的文字不同。
猜你喜欢
  • 2019-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-17
  • 2021-09-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多