SQL 函数依赖

SQL Functional dependencies

假设 X1 → Y1 和 X2 → Y2

X1∩X2→Y1∩Y2是真的吗? X1∪X2→Y1∩Y2怎么样?

我已经考虑这个问题几个小时了,我真的卡住了。也许第二个是正确的,因为 Y1 和 Y2 中的任何内容都将依赖于 X1 或 X2 中的至少一个。

第一个公式显然是错误的。一个非常简单的例子来说明这一点:

R(A,B,C,D)
A B → C D
B E → D F

从这个不能推断出B → D任何方式,事实上下面的实例满足上述两个依赖,但不满足第三个(对于相同的B值,有两个不同的值D):

A   B   C   D   E   F
----------------------
a1  b1  c1  d1  e1  f1
a2  b1  c1  d2  e1  f1

另一方面,第二个公式是正确的,这可以通过使用 Armstrong’s Axioms.

来证明