有两个表
表一
证号               姓名     费用1  费用2     费用3
5220107020024 罗幸莲 NULL NULL NULL
5220107020024 罗利 NULL NULL NULL
5220112060003 黄菊凤 NULL NULL NULL
5220201210012 左甲初 NULL NULL NULL
表2
证号               姓名     费用1  费用2     费用3
5220107020024 罗幸莲 2 3 4
5220107020024 罗利 8 5 78
5220107020024 罗幸莲 4 7 56
5220107020024 罗幸莲 23 34 3
5220201210012 左甲初 4 78 2
  
 请大家帮忙写个更新语句把表2中的  证号和姓名相同的 更新到表1相应中   谢谢了

解决方案 »

  1.   

    UPDATE TB1 SET 费用1=B.费用1,费用2=B.费用2,费用3=B.费用3 FROM (SELECT 证号, 姓名,sum(费用1)费用1,sum(费用2) 费用2,sum(费用3) 费用3 from tb2 group by 证号, 姓名) b where tb1.证号=b.证号 and tb1.姓名=b.姓名
      

  2.   

    update 表1
    set 费用1=b.n1, 费用2=b.n2, 费用3=b.n3
    from 表1 a,
    (select 证号,n1=sum(费用1),n2=sum(费用2),n3=sum(费用3) from 表2 group by 证号)b
    where a.证号=b.证号
      

  3.   

    写错了 有两个表
    表一
    证号               姓名     费用1  费用2     费用3
    5220107020024 罗幸莲 NULL NULL NULL
    5220107020024 罗利 NULL NULL NULL
    5220112060003 黄菊凤 NULL NULL NULL
    5220201210012 左甲初 NULL NULL NULL
    表2
    证号               姓名     费用1  费用2     费用3
    5220107020024 罗幸莲 2 3 4
    5220107020024 罗利 8 5 78
    5220107020024 罗幸莲 4 7 56
    5220107020024 罗幸莲 23 34 3
    5220201210012 左甲初 4 78 2
      
     请大家帮忙写个更新语句把表2中的  证号和姓名相同的费用总和 更新到表1相应数据中   谢谢了
      

  4.   

    update 表一
    set 费用1=表2.费用1,费用2=表2.费用2,费用3=表2.费用3
    from 表2
    where 表2.证号=表一.证号 and 表2.姓名=表一.姓名