这是我今天的数据库结构......
inventory_transactions
quantity_offset
存储具有负值或正值的库存变动。他们还有一个inventory_transaction_id
shipments
存储装运,它们是inventory_transactions
一组shipment_id
inventory_transactions
和之间的关系shipments
在一个名为的表中shipment_inventory_transactions
我希望能够做的是增加与给定相关联quantity_offset
的 an (增加货件中给定库存项目的数量),如果该项目已经存在于货件中。inventory_transaction
shipment
如果该项目不存在,请在inventory_transactions
和中创建所需的行shipment_inventory_transactions
JOIN
我认为and的某种组合ON DUPLICATE KEY UPDATE
可以做到这一点,但我无法理解它。
为了简化情况,我正在考虑删除该shipment_inventory_transactions
表,因为 shipping 和 inventory_transactions 之间的关系现在将是 1 对 1。这里唯一的问题是每个inventory_transaction 可以与发货或收据相关联,但不能同时与两者相关联。将它们存储在同一列中听起来很恶心。但是我不喜欢在每一行中都有一个额外的列,因为只会使用一个或另一个。
哇... 大脑转储完成。如果这是有道理的,并且您可以提供一个让我无法理解的明智答案,我将不胜感激。