📜  门| GATE-CS-2004 |第 90 题

📅  最后修改于: 2021-09-24 05:49:58             🧑  作者: Mango

考虑以下与学生数据库相关的关系模式:

Student (rollno, name, address)
Enroll (rollno, courseno, coursename)

其中主键显示为下划线。 Student 和 Enroll 表中的元组数分别为 120 和 8。 (Student * Enroll) 中可以出现的最大和最小元组数是多少,其中“*”表示自然连接?
(一) 8、8
(二) 120, 8
(三) 960, 8
(四) 960、120答案:(一)
说明:自然连接的结果是 R 和 S 中在其公共属性名称上相等的所有元组组合的集合。

最大可能的元组数是多少?
当没有共同属性时,自然连接的结果等于笛卡尔积。给定的表有一个共同的属性,所以自然连接的结果不能超过更大表中元组的数量。

Student
-------------------------------------
Rollno          name         Address
-------------------------------------
1                a             abc
2                b             bcd
3                c             cde



                   Enroll
----------------------------------------------
Rollno           Courseno          Coursename
----------------------------------------------
1                 12                 pqr
1                 14                 qrs
1                 15                 rst 
2                 13                 uvw 
2                 14                 qrs 

Result of natural join
----------------------------------------------
Rollno  Name   Address   Courseno  Coursename
----------------------------------------------
1        a      abc         12      pqr
1        a      abc         14      qrs
1        a      abc         15      rst 
2        b      bcd         13      uvw
2        b      bcd         14      qrs 

最小可能的元组数是多少?
可能没有rollno common。在这种情况下,元组的数量将为 0。但在问题中 rollno 是 Student 表中的主键,它是 Enroll 表中的主要属性。

因此,在注册表和学生表的 rollno 列中不可能有空值,并且注册中的每个元组都有一个父元组。因此,元组的最小数量可能是 8 个(在 Enroll 表中只有 8 个元组)。

选项(A)是正确的。
这个问题的测验