update table1 set table1.field3=table1.field3+table2.field5,table1.field4=table1.field2+table1.field3 from table1 left join
table2 on table1.field1=table2.field1

解决方案 »

  1.   

    你写了where后不等于的就不会加了update table1 set field3=a.field3+b.field5 ,field4 = a.field2+a.field3+b.field5
    from table1 a,table2 b
    where a.field1=b.field1
      

  2.   

    --TRY ,沒測試
    DECLARE @field3 VARCHAR(50)
    UPDATE T1 SET field3=field3+T2.field5, @field3=field3,
    field4=field2+@field3
    FROM TABLE1 T1,TABLE2 T2 WHERE T1.field1=T2.field1
      

  3.   

    update table1 set
       field3 = table1.field3+table2.field5 ,
       field4 = table1.field2+table1.field3 +table2.field5
    from table1,table2
    where table1.field1=table2.field1
      

  4.   


    update t1 set t1.f3=t1.f3+f5,
                     f4=f2+f3
    from t1 join t2 on t1.f1=t2.f1
      

  5.   

    UPDATE a SET a.field3 = a.field3 + b.field5 FROM table1 a INNER JOIN table2 b ON a.field1=b.field1
      

  6.   

    1当table2.field1=table1.field1的时候, 
    将table2.field5加到table1的field3中, 
    即table1.field3 = table1.field3+table2.field5 
    如果不等于的时候,则不加。 
    --
    update t1
    set 
        field3 = field3+ case when t2.field1 is not null then t2.field5 else 0 end ,
        field4 = field2+field3 
    from table1 t1
    left join join table2 t2 on t2.field1=t1.field1
      

  7.   

    update a set field3=(case when a.field1=b.field1 then a.field3+b.field5 else b.field3 end),
    field4=(a.field2+a.field3) from table1 a,table2 b
      

  8.   


    如果是不管table2.field1=table1.field1是否成立都会执行2的话,那么是8楼的语句
      

  9.   

    DECLARE @table1 TABLE( field1 INT ,field2 INT ,field3 INT ,field4 INT  )
    DECLARE @table2 TABLE( field1 INT,field5 INT) 
    INSERT @TABLE1 SELECT 1,2,3,4
    INSERT @TABLE1 SELECT 2,3,4,5
    INSERT @TABLE2 SELECT 1,10
    DECLARE @field3 INT
    UPDATE T1 SET field3=field3+T2.field5, @field3=field3+T2.field5,
    field4=field2+@field3
    FROM @TABLE1 T1,@TABLE2 T2 WHERE T1.field1=T2.field1
    SELECT * FROM @TABLE1
    /*field1      field2      field3      field4      
    ----------- ----------- ----------- ----------- 
    1           2           13          15
    2           3           4           5*/
      

  10.   

    update table1 set table1.fielde3= table1.field3+table2.field5
      from table2 where table2.field1=table1.field1
    update table1 set table1.field4= 
    table1.field2+table1.field3