UPDATE JSKLPA SET LPA004=A.JE FROM(select LPB001,LPB002,LPB012,SUM(LPB005)AS JE FROM JSKLPB 
WHERE LPB002='201106' GROUP BY LPB001,LPB002,LPB012) AS A 
WHERE LPA001=A.LPB001 AND LPA002='201106' AND LPA017=A.LPB012 AND LPA002=A.LPB002谁能给你中文解释,越清楚越好,还有就这个语子有没有错?

解决方案 »

  1.   

    (select LPB001,LPB002,LPB012,SUM(LPB005)AS JE FROM JSKLPB  
    WHERE LPB002='201106' GROUP BY LPB001,LPB002,LPB012) AS A 
    主要就是这个吧,把记录集当成一个表,然后联表更新。
    语句大致看了下,没错,不过下次别都大写啊,看着累啊!
      

  2.   

    UPDATE
     b 
    SET
     LPA004=A.JE 
    FROM
    (select LPB001,LPB002,LPB012,SUM(LPB005)AS JE FROM JSKLPB  
    WHERE LPB002='201106' GROUP BY LPB001,LPB002,LPB012) AS A , b
    WHERE
     b.LPA001=A.LPB001 
    AND
     b.LPA002='201106' 
    AND
     b.LPA017=A.LPB012 
    AND
     b.LPA002=A.LPB002