Перші три нормальні форми
- 1NF — кожна комірка містить одне атомарне значення (не масив, не список через кому)
- 2NF — немає часткових залежностей: кожен не-ключовий атрибут залежить від усього первинного ключа
- 3NF — немає транзитивних залежностей: не-ключові атрибути залежать лише від ключа, а не від інших не-ключових
Денормалізація
Нормалізація зменшує надлишковість, але збільшує кількість JOIN. У навантажених системах читання свідомо денормалізують (дублюють дані), щоб уникнути складних запитів. Типовий приклад — збереження username разом з коментарем, щоб не робити JOIN до users.