李闲愚
2017-12-28 06:29
采纳率: 100%
浏览 1.4k
已采纳

新手求讲解两个元组表达式

在课本《数据库系统原理》中这两条元组表达式有点不明白,例6中 => 这个符号在当前语句中能不能用∧替代呢?为什么?例8看起来更加复杂,不知道分析这条语句该从哪下手……求学长不吝赐教!谢谢!图片说明图片说明图片说明

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • Payne14 2018-01-02 12:25
    已采纳

    (6)=>不能用∧替换。
    p=>q唯一不成立的情况是p是真但是q是假,用=>符号的意思是 学生关系里存在一条元祖u,使得对选课关系里的所有元祖v, 如果u[1] = v[1]成立,
    那么v[2] != 'C2' 都成立;或者 u[1] = v[1]都不成立(即选课表里没有这个同学,等价于这个同学也没选C2课程),那么这个u就是结果中的元祖。
    替换成∧后,得到的结果缺了选课关系里没有记录的同学信息。

    (8)去掉前面的存在和任意修饰,关键就是分析 v[1] = 'S3' => (w[1] = u[1] ∧ w[2] = v[2]) 这个表达式,使得这个表达式为真的u都是结果中的元祖。
    这个表达式为真的情况有两种:
    1、v[1] = 'S3' 为假,因为v是任意修饰的,表示SC中所有的元祖v,都不等于S3,即S3同学没有选课,那么对每一个SC中的元祖u,表达式都成立,即所有的u都是结果中的元祖。
    2、v[1] = 'S3'为真,且(w[1] = u[1] ∧ w[2] = v[2])为真。 说明如果S3同学选课了,那么对SC表中的一个元祖u,如果在SC表中存在一个元祖w,
    使得w[1] = u[1]和 w[2] = v[2]都成立,即u这个同学在SC表中有一条选课记录w,w和S3这个同学的一条选课记录v的课程相同,则u在结果中。

    望采纳,毕业好多年了,快速复习了一下,有些表述不清楚^^

    已采纳该答案
    打赏 评论

相关推荐 更多相似问题