gpt4 book ai didi

mysql - 影响 MySQL 中带有关键字的所有行的产品变体

转载 作者:行者123 更新时间:2023-11-29 07:09:52 28 4
gpt4 key购买 nike

我正在尝试更新两个(inventorysold)MySQL 表的表库存。

假设我们正在处理的 sku 是 BT888-16

UPDATE inventory JOIN sold
ON inventory.sku = sold.sku
SET inventory.quantity = inventory.quantity - sold.quantity

这按预期工作,但 BT888-16BT888 sku 的产品变体。

如何才能使 sold 中的 BT888-16 影响 inventory 中包含 BT888 的所有数量行>?

例如,BT888-16 应该影响其中包含短语 BT888 的所有数量行吗? BT888 BT888-01 BT888-02 BT888-03 -- 一直到 BT888- ***

最佳答案

这看起来很困惑,但你可以明确地输入逻辑:

UPDATE inventory i JOIN
sold s
ON i.sku = s.sku or
(s.sku = 'BT888-16' and i.sku like 'BT888-%')
SET i.quantity = i.quantity - s.quantity;

编辑:

我的意思是,你可以开始玩这样的游戏:

UPDATE inventory i JOIN
sold s
ON i.sku = s.sku or
(s.sku like '%-16' and i.sku like concat(substring_index(s.sku, '-', 1), '-%')
SET i.quantity = i.quantity - s.quantity;

但是,我认为您需要表中的一列来为您进行映射。也就是说,您需要能够定义“相互”影响的 SKU ID 组。

关于mysql - 影响 MySQL 中带有关键字的所有行的产品变体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40183777/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com