Вот моя структуру базы данных, как она стоит сегодня ... движенийМогу ли я комбинировать ВСТАВИТЬ, JOIN и дублирование KEY UPDATE
inventory_transactions
магазина инвентаря с quantity_offset
значения, либо отрицательные или positivie. Они также имеют inventory_transaction_id
shipments
магазин пересылок, которые являются группами inventory_transactions
с shipment_id
Отношения между inventory_transactions
и shipments
находится в таблице под названием shipment_inventory_transactions
То, что я хотел бы быть в состоянии сделать приращение quantity_offset
inventory_transaction
, связанное с данным shipment
(увеличение количества данного предмета инвентаря в пределах отгрузки), если этот элемент уже существует в отгрузке.
Если элемент не существует, создать необходимые строки в inventory_transactions
и shipment_inventory_transactions
Я думаю, что некоторые комбинации JOIN
и ON DUPLICATE KEY UPDATE
может это сделать, но я не могу обернуть мою голову вокруг него.
Чтобы упростить ситуацию, я рассматриваю возможность удаления таблицы shipment_inventory_transactions
, потому что отношения между отправлениями и inventory_transactions теперь будут 1 к 1. Единственное, что у нас получилось, это то, что каждый инвентарь_транзакции может быть связан с отгрузкой или квитанцией, но не с обоими. Хранение их обоих в одной колонке звучит скучно. Но мне не нравится иметь дополнительный столбец в каждой строке, так как будет использоваться только один или другой.
Wooh ... Brain dump полный. Если бы это имело смысл, и вы могли бы дать разумный ответ, который ускользал от меня, я был бы очень благодарен.