Database 此表的非平凡函数依赖项

Database 此表的非平凡函数依赖项,database,relational-database,functional-dependencies,Database,Relational Database,Functional Dependencies,下表中包含哪些非平凡的函数依赖项? 有人能一步一步地解释一下规则吗 A B C ------------ a1 b2 c1 a2 b1 c6 a3 b2 c4 a1 b2 c5 a2 b1 c3 a1 b2 c7 我将从一个免责声明开始,声明我对函数依赖性的了解仅限于中所解释的内容,并且我目前没有进一步研究的必要或倾向 然而,由于OP要求澄清,我将试图澄清我是如何获得我在评论中发布的看似正确的答案的 首先,这是维基

下表中包含哪些非平凡的函数依赖项? 有人能一步一步地解释一下规则吗

A   B   C
------------
a1  b2  c1    
a2  b1  c6    
a3  b2  c4    
a1  b2  c5    
a2  b1  c3    
a1  b2  c7    

我将从一个免责声明开始,声明我对函数依赖性的了解仅限于中所解释的内容,并且我目前没有进一步研究的必要或倾向

然而,由于OP要求澄清,我将试图澄清我是如何获得我在评论中发布的看似正确的答案的

首先,这是维基百科的定义:

给定一个关系R,R中的一组属性X称为 在功能上确定另一组属性Y,也在R中, (书面形式)→ Y) 当且仅当每个X值与 精确的一个Y值;然后说R满足泛函 依赖关系X→ Y

此外,维基百科声明:

函数依赖FD:X→ 如果Y是a,则Y称为平凡 X的子集

根据这些定义,我得出了给定关系的以下两个非平凡函数依赖关系:

  • A→ B
  • C→ {A,B}
识别这些是一个完全归纳的过程。我没有应用一系列的规则、公式和计算,而是查看了提供的数据并搜索满足上述定义的约束

在这种情况下:

  • A→ B
    A有三个可能的值:a1、a2和a3。查看B的相应值,您将发现以下组合:a1→ b2,a2→ b1和a3→ b2。或者,A的每个值与一个B值精确关联,符合定义
  • C→ {A,B}
    同样的道理也适用于这种依赖性。在这种情况下,由于C的值在此关系中是唯一的,因此识别它稍微容易一些。从这个意义上说,C可以被视为一个键。在数据库术语中,a就是:唯一标识每个元组的最小属性集

毫无疑问,有一种方法可以从数据中从数学上推导出函数依赖关系,但对于这样的简单情况,归纳过程似乎工作得很好。

因此,上表中的非平凡函数依赖关系是:

 1. A->B
 2. A,C->B
 3. B,C->A
 4. C->A,B

我只是浏览了维基百科文章中的示例,但我认为没有任何示例,或者这个示例无法识别任何示例,因为C的值是唯一的。你可以说
C->A
,或者
C->B
,或者
AC->B
或者
BC->A
,但是这些都是非常琐碎的……你可以试着用在线解算器来找出你刚刚浏览过维基百科文章的答案,我已经确定了以下几点:
A→ B
C→ {A,B}
。可能有点离题了…@tobias_k根据维基百科的文章,当涉及函数依赖项时,Triple有一个特定的含义,即依赖集是行列式集的子集。@tobias_k你能解释一下如何找到它吗?