What is PJNF(Project-Join Normal Form)?

Fifth normal form (5NF), is also known as project-join normal form (PJNF). It is a level of database normalization designed to reduce redundancy in relational databases. A relation is said to be in 5NF if and only if it satisfies 4NF and no join dependency exists. A relation is said to have join dependency if it can be recreated by joining multiple sub relations and each of these sub relations has a subset of the attributes of the original relation.

What-is-PJNF

Condition for join dependency:
If the join of R1 and R2 over Q is equal to relation R then we can say that a join dependency exists, where R1 and R2 are the decomposition R1 (P, Q) and R2 (Q, S) of a given relation R (P, Q, S). R1 and R2 are a lossless decomposition of R.

Properties of 5NF:
A relation R is in 5NF if and only if it satisfies following conditions:

  • R should be in 4NF (no multi-valued dependency exists).
  • It cannot undergo lossless decomposition (join dependency)

Example: Consider the relation R below having the schema R(supplier, product, consumer). The primary key is a combination of all three attributes of the relation.

Table 1
supplier product consumer
S1 P1 C1
S1 P2 C1
S2 P1 C1
S3 P3 C3
Table 2
supplier product
S1 P1
S1 P2
S2 P1
S3 P3
Table 3
consumer product
C1 P1
C1 P2
C3 P3
Table 4
supplier consumer
S1 C1
S2 C1
S3 C3

Explanation:
Table 2, Table 3 and Table 4 when joined yield the original table (Table 1). Hence join dependency exists in Table 1, therefore Table 1 is not in 5NF or PJNF. However Table 2, Table 3 and Table 4 satisfy 5NF as it has no multivalued dependency and cannot be decomposed further (join dependency does not exists). But this might not be true in all cases i.e., when we combine the decomposed tables, the resultant table may not be equivalent to the original table, in that case the original table is said to be in 5NF provided it is already in 4NF. However, 5NF is not applied in practical scenarios and remains limited to theoretical concepts.

Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.

My Personal Notes arrow_drop_up


If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.


Article Tags :
Practice Tags :


1


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.