Denormalization
Suppose that the following query is important:
- Is the value of a contract less than the budget of the department?
To speed up this query, we might add a field budget B to Contracts.
- This introduces the FD D ? B wrt Contracts.
- Thus, Contracts is no longer in 3NF.
We might choose to modify Contracts thus if the query is sufficiently important, and we cannot obtain adequate performance otherwise (i.e., by adding indexes or by choosing an alternative 3NF schema.)