- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Fifth Normal Form (5NF)
The 5NF (Fifth Normal Form) is also known as project-join normal form. A relation is in Fifth Normal Form (5NF), if it is in 4NF, and won’t have lossless decomposition into smaller tables.
You can also consider that a relation is in 5NF, if the candidate key implies every join dependency in it.
Example
The below relation violates the Fifth Normal Form (5NF) of Normalization −
<Employee>
EmpName | EmpSkills | EmpJob (Assigned Work) |
David | Java | E145 |
John | JavaScript | E146 |
Jamie | jQuery | E146 |
Emma | Java | E147 |
The above relation can be decomposed into the following three tables; therefore, it is not in 5NF −
<EmployeeSkills>
EmpName | EmpSkills |
David | Java |
John | JavaScript |
Jamie | jQuery |
Emma | Java |
The following is the <EmployeeJob> relation that displays the jobs assigned to each employee −
<EmployeeJob>
EmpName | EmpJob |
David | E145 |
John | E146 |
Jamie | E146 |
Emma | E147 |
Here is the skills that are related to the assigned jobs −
<JobSkills>
EmpSkills | EmpJob |
Java | E145 |
JavaScript | E146 |
jQuery | E146 |
Java | E147 |
Our Join Dependency −
{(EmpName, EmpSkills ), (EmpName, EmpJob), (EmpSkills, EmpJob)} |
The above relations have join dependency, so they are not in 5NF. That would mean that a join relation of the above three relations is equal to our original relation <Employee>.