В базах данных SQL есть две функциональные зависимости.
a) Частичная функциональная зависимость: неключевой столбец зависит от некоторых, но не от всех столбцов в составном первичном ключе.
b) Переходные функциональные зависимости: любой неключевой столбец зависит от других неключевых столбцов.
Для хорошей базы данных SQL.
Правило 1: столбцы содержат только атомарные значения
Правило 2: Нет повторяющихся групп данных
Правило 3: не иметь частичных зависимостей
Правило 4: не иметь транзитивных зависимостей
Я понял требования правил 1 и 2, зачем нам нужны правила 3 и 4 вместо того, чтобы говорить, что столбец no не должен зависеть от других столбцов. Почему существуют два отдельных правила (3 и 4)?
Источник: Head First SQL
Заранее спасибо!