ORACLE没有这中语法UPDATE TAB_A
SET TAB_A.COL1 = TAB_B.COL1,
    TAB_A.COL2 = TAB_B.COL2
FROM TAB_A,TAB_B
WHERE TAB_A.COL3 = TAB_B.COL3;
只能使用子查询的方法去更新

解决方案 »

  1.   

    UPDATE TAB_A
    SET (TAB_A.COL1,TAB_A.COL2) =
    ( SELECT TAB_B.COL1, TAB_B.COL2
      FROM TAB_B
      WHERE TAB_A.COL3 = TAB_B.COL3 );
      

  2.   

    UPDATE order_rollup
    SET (qty, price) = (SELECT SUM(qty), SUM(price)
    FROM order_lines
    WHERE customer_id = 'KOHL')
    WHERE customer_id = 'KOHL'
    AND order_period = TO_DATE('01-Oct-2000');
    or
    UPDATE order_rollup
    SET phone = '3125551212'
    ,fax = '7735551212'
    WHERE customer_id = 'KOHL';