假设我们有关系R(A,B,C,D,E)
FD是:
A -> C
AB -> D
光盘 -> E
我知道关键是AB。
我的问题是:E 是完全还是部分依赖 AB?
我认为这是完全依赖的,因为如果我使用 FD 推理规则,AB 会确定 E。但是,我的同事说E部分依赖于AB,因为C部分依赖于AB。什么是正确的?
感谢您的帮助
它完全依赖于 AB,因为您没有依赖(甚至是传递的)A->E
或B->E
。实际上,这意味着:如果我告诉你A
或B
的值,你无法告诉我E
的价值——你需要两个值来推断价值。看看这个关于功能依赖关系的简短页面:
Y在功能上完全依赖于 X,不应该有任何 Z→Y,其中 Z 是 X 的适当子集。
在这种情况下,A
或B
将是子集。
从更大的角度看你的整个关系,这似乎是一个理论结构。至少它的设计很差:
-
CD -> E
打破第三范式 -
A -> C
打破了第二范式 -C
部分依赖于AB