Пример взят из головы, реальная задача иная, но схожая.
Допустим есть таблица людей и машин.
Люди
----
Id
Имя
Машины
----
Id
Марка
Нужно их связать - возможность указывать у людей марку их машины.
Вариантов два - добавить в таблицу людей поле CarId, либо сделать промежуточную таблицу.
МашиныУЛюдей
----
CarId
PersonId
Всё на первый взгляд просто - если машина одна, то поле, если несколько - таблица.
Но если машина исключительно одна и мало кто владеет ими? Добавлять лишнее поле нецелесообразно (размер вырастет, длинна каждой записи увеличится), а промежуточная таблица может плохо сказаться на производительности. Или разницы нет?? А если машина менее чем у 1% людей? А если у 10%?
Есть какие-нибудь общие практики и рекомендации что лучше выбрать?