考虑以下与学生数据库有关的关系架构:
Student (rollno, name, address)
Enroll (rollno, courseno, coursename)
主键用下划线显示。 “学生”和“注册”表中的元组数分别为120和8。 (Student * Enroll)中可以出现的元组的最大和最小数目是多少,其中“ *”表示自然连接?
(A) 8、8
(B) 120、8
(C) 960,8
(D) 960,120答案: (A)
说明:自然联接的结果是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
元组的最小可能数目是多少?
可能没有没有共同点。在这种情况下,元组的数量将为0。但是在问题中,rollno是Student表中的主键,并且是Enroll表中的质数属性。
因此,在enroll表和Student表的rollno列中没有空值的机会,并且Enroll中的每个元组都将有一个父级。因此,最小的元组数目可能是8(在Enroll表中只有8个元组)。
选项(A)是正确的。
这个问题的测验