Third Normal Form
Last modified: October 18, 2019
Contribute to Data School
We are actively working on this chapter. We are looking for two types of contributions:
- Help writing this chapter
- Share your story about working through this problem at work
Please reach out to @Matt David on our slack to discuss what you want to contribute.
Data School wants a comprehensive post to help people understand why third normal form is used. Most articles approach this from a principles approach, we want to focus on a practical approach, namely that updating data that is not in 3NF is error prone.
The outline for this chapter:
1) The problems with updating data
Show consistent example and how when you try updating the values how it is problematic until it is in 3rd normal form.
- Update cell with multiple values
- Update value in multiple places
2) Show how to get the data back out
Use the same example how you would query the 3NF schema into the first table we started with. Give advice about JOIN types.
Spend extra time calling attention to many to many relationships
3) Summary
3NF lets us update data with less errors.
We can rebuild big tables using JOINs
Written by:
Reviewed by: