What is normalisation in databases?
Normalisation is the process of organising tables to reduce duplicate data and avoid update problems. You split large tables into smaller related ones and link them with keys. The goal is that each fact is stored in one place, so updating it does not require changing many rows. Common levels are first, second, and third normal form.
The problem it solves
If you store a customer's address in every one of their orders, changing the address means updating many rows, and they can easily fall out of sync. Normalisation moves the address into a customers table stored once, and orders simply reference it.
The common normal forms
- First normal form: each cell holds a single value, no repeating groups.
- Second normal form: no partial dependency on part of a composite key.
- Third normal form: no column depends on another non key column.
Mention the trade off with denormalisation. Normalisation reduces redundancy but can need more joins, so read heavy systems sometimes denormalise for speed. Knowing both sides shows practical experience, not just theory.
Common follow up questions
Related interview questions
Want the full SQL guide?
Read every SQL concept with notes, diagrams, and code in one place. Track your progress as you go.
Open the SQL guide All SQL questions