假设 A(ID,NAME,score) B(ID,SCORE) ,具体不知道你要什么。
不过也许你想要的是这个: 
   update a set (score)=(select score from b where b.id=a.id);
-----
SQL> CREATE TABLE TEST_A(ID INTEGER,NAME VARCHAR2(10),SCORE INTEGER);Table createdSQL> Create table test_b(id integer,score integer);Table createdSQL> insert into test_a values(1,'How',null);1 row insertedSQL> insert into test_a values(2,'do you du?',null);1 row insertedSQL> insert into test_a values(3,'GoodName',null);1 row insertedSQL> commit;Commit completeSQL> insert into test_b values(1,100);1 row insertedSQL> insert into test_b values(2,99);1 row insertedSQL> insert into test_b values(3,58);1 row insertedSQL> commit;Commit completeSQL> update test_a set (score)=(select score from test_b where test_b.id=test_a.id);3 rows updatedSQL> commit;Commit completeSQL> select * from test_a;                                     ID NAME                                         SCORE
--------------------------------------- ---------- ---------------------------------------
                                      1 How                                            100
                                      2 do you du?                                      99
                                      3 GoodName                                        58

解决方案 »

  1.   

    如果是Table1和Table2除了一个字段不一样之外(Table2比Table1多一个字段).其余字段类型全部一样.怎么将Table2更新到Table1里去?
      

  2.   

    update test_a 
    set (col1, col2, col3, ...) =
    (select col1, col2, col3,... 
      from test_b where test_b.primary_key = test_a.primary_key )
    where exists (select 1 from test_b where test_b.primary_key = test_a.primary_key );
      

  3.   

    update test_a 
    set (col1, col2, col3, ...) =
    (select col1, col2, col3,... 
      from test_b where test_b.primary_key = test_a.primary_key )这样不行吗?
      

  4.   

    update test_a 
    set (col1, col2, col3, ...) =
    (select col1, col2, col3,... 
      from test_b where test_b.primary_key = test_a.primary_key )这样也行??
      

  5.   

    楼上各位的答复已经很完美了.就是这么简单.
     update a set (c1,c2,c3..Cn)=(select c1,c2,c3..cn from b where b.key=a.key)