Я борюсь с тем, что является лучшим дизайном.
Есть 3 таблицы.
pr и pr_item и item
pr => id, name
item => id, name
pr_item => prId
, itemId, itemPrice
pr означает запрос на покупку.
Я собираюсь внести изменения, когда пользователи могут выбрать несколько поставщиков для PR.
Поставщик не обязателенхотя.
Если для PR выбраны поставщики, в веб-интерфейсе будет отображаться группа товаров по поставщикам.(Каждый поставщик будет иметь свою собственную цену товара)
Поставщик 1
Item1 50
Item2 100
Поставщик 2
Item1 30
Item3 40
Item4 80
Если не выбран поставщик,
Item1 50
Item2 100
Item3 20
Item4 50
У меня есть 2 подхода
Подход 1:
Добавьте еще один обнуляемый столбец с именем supplierId в pr_item и сгруппируйте по SupplierId при получении записей из pr_item.
Подход 2:
Добавление еще 2 дочерних таблиц
pr_supplier -> prId, supplierId
pr_supplier_item -> prSupplierId, itemId, itemPrice
Таким образом, это будут запросы на объединение вместо группировки по,
Какой из них лучше?
Я использую MySQL.