本帖最后由 weinqqq 于 2010-06-22 07:28:11 编辑

解决方案 »

  1.   

    insert into #temp (bh , kc,sj)
    (select A.商品编号 as bh,sum(A.库存) as kc,max(a.最后销售时间) as sj
    union all select B.商品编号 as bh,-sum(B.库存) as kc,max(B.最后销售时间) as sj) Z group by bhselect * from #tmep差不多这样吧 没测试过
      

  2.   

    不用使用游标啊,如果方便的话做个出库的视图就行了,库存和出库的视图一下union all不就出来剩余数量了
      

  3.   

    可以在表B(销售表)上做触发器,只要B表有增加时,就在A表做减法。
    或者直接地存储过程中,向B表添加记录后,再将A表相应记录的数量减去,在这两个动作中加入事务回滚,保证出错时数据的一至性。