域关系演算“为所有”表达

时间:2014-03-10 22:22:18

标签: relational-database domain-calculus

我有如下大学数据库:

Student (SID, name, family, mean, age, city, street, CID)
Instructor (IID, name, family, salary, city, street, CID)
College (CID, name, city)

如何在域关系演算(DRC)中回答以下查询?

“找到位于伦敦的所有学院的教师”

2 个答案:

答案 0 :(得分:1)

找到所有教师,以便在伦敦没有任何大学,这样教师就不在那所大学。

但是这个问题有点值得怀疑,因为你的数据库结构似乎允许任何教师在任何时候“最多”进入一所大学。

答案 1 :(得分:0)

当您必须解决此类工作时,您必须执行以下步骤:

  1. 在位于伦敦的至少一所大学中搜索的所有教师
  2. 1
  3. 列表中的列表中取出整个教师列表并减去

    无论如何,由于您的数据库通过外部密钥(教师中的 CID )教师连接到大学,您可以最多一位大学教师。

    为了能够将更多教师链接到更多大学,您必须插入一个额外的表来设计N:M关系,例如here