У меня есть несколько таблиц, которые выигрывают от таблиц «многие ко многим». Например, командный стол.
Член команды может занимать более одной «позиции» в команде, все позиции перечислены в таблице db позиций. Предыдущие позиции также сохраняются, для этого у меня есть отдельная таблица, поэтому у меня есть
- таблица участников (с информацией о команде)
- таблица позиций (содержащая позиции)
- таблица member_to_positions (идентификатор члена и идентификатор позиции)
- member_to_previous_positions (идентификатор члена и идентификатор позиции)
Все просто, но суть в том, что член команды может принадлежать многим командам.
У меня уже есть справочная таблица team_to_member.
Теперь возникает проблема, как связать позицию с командой? Участник, возможно, был лидером команды в одной команде, и в настоящее время является радиоканалом и сотрудником по прессе в другой команде. Как мне просто получить информацию о члене, чтобы показать его текущее положение, а также его прошлую историю, включая прошлые команды.
Нужно ли мне добавлять таблицу позиций position_to и каким-либо образом ссылаться на нее, или я могу добавить команду к члену в таблицу позиций?
Это все очень запутанно, эта нормализация.