如下:
有 A 表name     sex      agetom       man
marry     womanB表name    agetom     12
marry   13
如何用update语句将B表中的age更新到A表中的age中?

解决方案 »

  1.   


    updata A
    set age = (select age from B where name = A.name)
    where exists(select 1 from B where name = A.name)
      

  2.   


    update A
    set age = (select age from B where name = A.name)
    where exists(select 1 from B where name = A.name)
      

  3.   

    update a set age = (select age from b where name = a.name);
      

  4.   

    --10g以下用
    UPDATE A
       SET age =
           (SELECT age FROM B WHERE NAME = A.name)
     WHERE EXISTS (SELECT 1 FROM B WHERE NAME = A.name);
    --10g以上可用
    MERGE INTO A
    USING B
    ON (a.name = b.name)
    WHEN MATCHED THEN
      UPDATE SET a.age = b.age;
      

  5.   

    update a set a.age=b.age from b where a.name=b.name
      

  6.   

    update A
    set age = B.age
    from A 
    join B 
    on A.name = B.name
      

  7.   

    UPDATE  A SET age=(select age from B where B.NAME=A.NAME);