updata a,b set a.aa=b.bb where a.xx=b.xx
请问这句怎么转成oracle语句   本句执行报错  缺少set关键字

解决方案 »

  1.   

    -- TRY IT ..
     UPDATE A
        SET A.AA = (SELECT B.BB FROM B WHERE A.XX = B.XX)
      WHERE EXISTS (SELECT 1 FROM B WHERE A.XX = B.XX);
      

  2.   

    以前发现不少人没WHERE EXISTS条件的,提醒下 
      

  3.   

    update a
    set aa=b.bb
    from b
    where a.xx=b.xx这样行不行的呀?以前用MSSQL可以这么写,后来用DB2就要用2楼的写法,oracle呢?
      

  4.   


    一行对多行的更新:
    update a 
    set aa=b.bb 
    from b 
    where a.xx=b.xx
     
    一行对一行的更新:
    UPDATE A
        SET A.AA = (SELECT B.BB FROM B WHERE A.XX = B.XX)
      WHERE EXISTS (SELECT 1 FROM B WHERE A.XX = B.XX);
      

  5.   

    沙发正解! 结贴去咯。在此感谢沙发兄弟,感谢csdn给了我这么好的平台。谢谢。