Изначально это было конечной структурой. Но заказчик внес правки и появилась иерархия:
Предложение_1 Сущность_промежуточное_звено - 1 день
Купон_1 человек - своя цена
Купон_2 человека - своя цена Сущность_промежуточное_звено - 2 дня
Купон_1 человек - своя цена
Купон_2 человека - своя цена
Причем Сущность_промежуточное_звено может вовсе отсутствовать или например может быть комбинированный вариант предложения, где некоторые купоны выпадают напрямую из него, а некоторые из Сущности_промежуточное_звено
Посоветуйте пожалуйста - куда правильнее всего эту вещь засунуть. Я примерно полагаю, что есть несколько вариантов решения:
1. Сделать предложение иерархичным
2. Сделать купон иерархичным
3. Создать новую таблицу
Подскажите добрым советом, товарищи программисты.
По 1-2 вариантам смущает, что некоторые поля в их случае будут пустыми.
По 2 варианту смущает то, что нужно будет добавить поле type(deal/category)
В третьем преимуществ особых не вижу.
В дополнение к вопросу, если 1. или 2. - правильно ли будет хранить иерархию в adjacency list?