title: update multiple columns in oracle
body: <p>I have query :</p>
  
  <pre><code>UPDATE SDM_KARYAWAN
  SET (ID_DIVISI,ID_UNIT_KERJA,ID_JABATAN) = 
  (
      SELECT ID_DIVISI,ID_UNIT_KERJA,ID_JABATAN FROM
          (
          SELECT TO_CHAR(TGL_SK,'YYYYMMDD') URUT,ID_DIVISI,ID_UNIT_KERJA,ID_JABATAN
          FROM SDM_KARYAWAN_JABATAN
          WHERE ID_KARYAWAN = '0081005'
          ORDER BY URUT DESC
          )DETAIL
      WHERE ROWNUM = 1
  )X
  WHERE ID_KARYAWAN = '0081005'
  </code></pre>
  
  <p>But show error like this : [Err] ORA-00933: SQL command not properly ended</p>
  
  <p>Actually I can use this code :</p>
  
  <pre><code>UPDATE TABLE1 SET COL1 = 'A',COL2='B',COL3='C'...
  </code></pre>
  
  <p>but What i want is updating multiple columns like this :</p>
  
  <pre><code>UPDATE TABLE1 SET (COL1,COL2,COL3) (SELECT COL1,COL2,COL3 FROM TABLE2)
  </code></pre>
  
  <p>::EDIT::
  I tried this :</p>
  
  <pre><code>SELECT A.ID_DIVISI,A.ID_UNIT_KERJA,A.ID_JABATAN,
          DETAIL.ID_DIVISI X,DETAIL.ID_UNIT_KERJA Y,DETAIL.ID_JABATAN Z
      FROM SDM_KARYAWAN A
      INNER JOIN 
      (
      SELECT ID_KARYAWAN, TO_CHAR(TGL_SK,'YYYYMMDD') URUT,ID_DIVISI,ID_UNIT_KERJA,ID_JABATAN
      FROM SDM_KARYAWAN_JABATAN
      WHERE ID_KARYAWAN = '0081005'
      ORDER BY URUT DESC
      )DETAIL
      ON DETAIL.ID_KARYAWAN = A.ID_KARYAWAN
      WHERE A.ID_KARYAWAN = DETAIL.ID_KARYAWAN
      AND ROWNUM = 1
  </code></pre>
  
  <p>The results :</p>
  
  <pre><code>ID_DIVISI    ID_UNIT_KERJA    ID_JABATAN    X    Y    Z
  -----------------------------------------------------------
  D1           D5000             D51000       D2  D200  D2100
  </code></pre>
  
  <p>Now, i want to update columns on table SDM_KARYAWAN with X,Y,Z value. what's missing from my query? pls.</p>