AdvancedTopic 76 of 104Software & Computing
Normalisation
Organise tables to reduce redundancy.
In depth
Normalisation structures tables to remove redundancy and update anomalies: 1NF (atomic values), 2NF (no partial dependency), 3NF (no transitive dependency), BCNF. Denormalisation is sometimes used for read performance. Entity-relationship modelling guides the design.
Key points
- Functional dependencies
- Keys
- Trade-offs with performance
ExampleStore customer address in a customers table, not in every order row.
What is Normalisation?
Organise tables to reduce redundancy.
Why is it important to understand normalisation?
Normalisation removes repeated data so that updates happen in one place, which prevents inconsistent records.
What is the first normal form?
Each column holds atomic values and each row is unique, so there are no repeating groups within a row.
Is full normalisation always best?
Not always. Some read-heavy systems deliberately denormalise to make queries faster, accepting more care in updates.
How is Normalisation used in practice?
Typical applications include splitting a table that repeats customer addresses on every order into separate tables, removing duplicated product names from an inventory table and designing a database for a laboratory where readings link to samples and instruments.
What should I learn before Normalisation?
Study "SQL queries and joins" first (topic 75 of 104 in Software & Computing). It covers the groundwork this topic builds on.
What are the key points of Normalisation?
Functional dependencies. Keys. Trade-offs with performance.
Can you give an example of Normalisation?
Store customer address in a customers table, not in every order row.
What comes after Normalisation?
The next topic is "Transactions and ACID", which builds directly on this one.
How difficult is Normalisation?
It is classed as Advanced in Software & Computing (topic 76 of 104). It is an advanced topic. It assumes you are comfortable with the intermediate topics in Software & Computing.