【问题标题】:retrieve correct data from my schemas从我的模式中检索正确的数据
【发布时间】:2017-01-22 23:14:42
【问题描述】:

我想检索教授超过 1 门课程的教师姓名

我真的不知道该怎么做,我所知道的是我需要考虑课程模式并对其进行操作,我能否得到一些关于 pi(projection),sigma(condition),rho(重命名)等(不是任何特定的数据库语言)?

【问题讨论】:

  • 请剪切和粘贴文本,不要使用图像作为文本。请对此作业的某些部分进行查询。如何提问 请用谷歌搜索“教授不止一门课程数据库 stackoverflow 的教师姓名”。尝试一些变体。用其中之一替换您的标题。除非您要找到问题的答案和/或重复问题。 PS请提供参考解释您的“关系代数”的确切细节,因为有许多变体,使用不同的运算符和关系的不同概念。

标签: relational-database relational-algebra


【解决方案1】:

由于这是家庭作业,您基本上需要阅读和完成教科书的绝对介绍性文本和有关关系模型基础知识和关系代数的练习,因此我会针对您的作业提供一些指导性问题。

关系(给定或查询结果)带有一个谓词,即由属性参数化的语句模板。关系包含从其谓词中做出真实陈述的元组。查询不需要 PK 和 FK。

什么是元组的关系表达式...

teacherid 标识的人教授由 cid 标识的课程,该课程名为 name? (答案:课程。)
teacherid 教名为 namecid? (同样的答案。为什么?)
teacheridcid 并且 cid 被命名为 name? (同样的答案。为什么?)

(我们可以从您的作业查询中推断出 Course & Teacher 谓词指的是人员,或者您无法获得教师姓名。)

tc 名为 n
tc命名 n AND c = 101?
tc 命名 n AND t 占据 o

t 教授一些以某个名字命名的课程?
对于某些ctc 命名一些名字? (相同的答案。为什么?)
对于某些 ctc 命名的东西 AND c = 101? (为什么我们需要一些?)

i 是学生,而不是 i 参加某位老师教授的课程?
一些学生参加了 t 教授的课程,或者 t 占据了一些办公室?

因此:我们使用逻辑运算符和给定的谓词为我们想要的元组组成一个查询谓词。然后我们得到一个表达式,它通过将逻辑运算符转换为关系运算符并将给定谓词转换为给定关系来计算它们。 (为了使用 AND NOT (MINUS) 或 OR (UNION) 来获得两个具有相同属性的关系可能会很繁琐。)

this

检索教授超过 1 门课程的教师姓名

您需要其中属性 Name 是一个人的名字的元组,对于某些两个值,该人教第一个课程,他们教第二个课程,这些值/课程不一样。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-03
    • 1970-01-01
    • 2021-10-06
    • 1970-01-01
    • 2018-04-02
    • 2016-12-06
    • 1970-01-01
    相关资源
    最近更新 更多