试试Update A set 
銷售數量=(Select SUM(IsNull(進貨數量,0)-IsNull(退貨數量,0)) from tab_2 B Left Join tab_3 C On B.產品編號=C.產品編號 And 產品編號=A.產品編號) 
from tab_1 A

解决方案 »

  1.   

    update tab_1 set 銷售數量=isnull(summ,0) from tab_1  left join 
    ( select 產品編號,sum  (進貨數量) 進貨數量 from
    (select 產品編號  ,  進貨數量 from tab_2 
    union all
     select 產品編號  ,  進貨數量* -1 from tab_3) as t0
     group by 產品編號 ) as t1
    on tab_1.產品編號=t1.產品編號
      

  2.   

    有可能 tab_1 產品編號 有 但是那两个表没有
      

  3.   

    Update A set 
    銷售數量=(Select SUM(IsNull(進貨數量,0)-IsNull(退貨數量,0)) from tab_2 B full outer Join tab_3 C On B.產品編號=C.產品編號 And 產品編號=A.產品編號) 
    from tab_1 A
    应该是full outer Join tab_3里面的记录有可能在tab_2 里面并不存在但是也要减去