我如何通过总和比较更新 sql 值

How do i update sql value with sum comparison

我正在尝试更新一个值,以根据针对订单数量的拣选状态显示订单的拣选状态。数据在相同的 table 中,但我无法找出正确的语法。我试过: 更新订单设置 Status = 'FULL' where Sum(Qty_Order) = sum(Qty_Picked) 我如何使用聚合查询应用此逻辑? 在此先感谢您的帮助/

一种方法使用更新连接:

UPDATE Orders o1
INNER JOIN
(
    SELECT id
    FROM Orders
    GROUP BY id
    HAVING SUM(Qty_Order) = SUM(Qty_Picked)
) o2
    ON o2.id = o1.id
SET
    Status = 'FULL';

这假设您的 Orders table 有一列 id 来唯一标识每个订单。