如果可以通过联接多个表来重新创建表,并且该表中的每个表都具有该表的属性的子集,则该表处于联接依赖关系中。它是多值依赖的概括
连接依赖关系可以与5NF相关,其中关系只有在5NF中并且不能进一步分解时,才在5NF中。
<员工>
EmpName | EmpSkills | EmpJob (分配的工作) |
汤姆 | 联网 | EJ001 |
哈里 | Web开发 | EJ002 |
凯蒂 | 程式设计 | EJ002 |
上表可以分解为以下三个表;因此不在5NF中:
<EmployeeSkills>
EmpName | EmpSkills |
汤姆 | 联网 |
哈里 | Web开发 |
凯蒂 | 程式设计 |
<EmployeeJob>
EmpName | EmpJob |
汤姆 | EJ001 |
哈里 | EJ002 |
凯蒂 | EJ002 |
<工作技能>
EmpSkills | EmpJob |
联网 | EJ001 |
Web开发 | EJ002 |
程式设计 | EJ002 |
我们的加入依赖关系-
{(EmpName,EmpSkills),(EmpName,EmpJob),(EmpSkills,EmpJob)} |
上述关系具有联接依赖性,因此不在5NF中。这意味着上述三个关系的联接关系等于我们的原始关系<Employee>。