当然不对,因为没有对表2的数据先求和,等于是先把值更新成10+3,后把值更新成10+2。

解决方案 »

  1.   

    update 表1 
         set 表1.数量 = 表1.数量 + v.数量 
    from 
         表1 
    INNER JOIN 
         (select 品名, 位置, sum(数量) as 数量 from 表2 WHERE 标示 = 'x' group by 品名,位置) v
    ON  
         表1.品名 = v.品名 AND 表1.位置= v.位置
      

  2.   

    是啊是啊 那请教如何做呢 用一句话的话