语句A:select DepName,WorkerID,Name,isnull(SUM(AmountSal), 0) AS AmountSal from GZ_JjGZHS group by DepName,WorkerID,Name 结果显示:DepName WorkerID  Name     AmountSal
财务部 23 小陈 2471.00000
财务部 27 小高 18240.0000
车间1 24 小毛 6000.0000
车间2 28 小许 18000.0000
人事部 21 小李 384.00000
人事部 27 小刘 7500.0000有另外一张表(GZ)内容如下:DepName  WorkerID  Name   GZ1
人事部 21 小李   0.00
车间 22 小张   0.00
财务部 23 小陈   0.00
车间1 24 小毛   0.00
车间2 25 大毛   0.00
财务部 27 小刘   0.00
、、、、、、、、、、、、、、、、
我想用Update语句更新表GZ的GZ1字段,要求是对于WorkerID

解决方案 »

  1.   

    差不多像
    update gz set gz.gz1=(select DepName,WorkerID,Name,isnull(SUM(AmountSal), 0) AS AmountSal from GZ_JjGZHS group by DepName,WorkerID,Name)………………
    但我还是不会写,大侠帮帮忙啊!!
      

  2.   

    两个表没有关系,只要把语句A得到的结果Update到表GZ中对应的WorkerID号就行了。不是很难吧??
      

  3.   

    update a set a.gz1=b.amountsal from gz a left join 
    (select DepName,WorkerID,Name,isnull(SUM(AmountSal), 0) AS AmountSal from GZ_JjGZHS group by DepName,WorkerID,Name) b
    on a.workerid=b.workerid
      

  4.   

    谢谢!lenghuazhang(未名)大哥!