0
UPDATE table1
SET
table1.field1 = table2.field1,
table1.field2 = table2.field2,
table1.field3 = table2.field3,
table1.fieldn = table2.fieldn
JOIN
table1 ON table2.joinfield = table1.joinfield

I'm getting error in Oracle (Toad for Oracle): ORA-00933: SQL command not properly ended

joshua
  • 1
  • You can't update on a JOIN in Oracle... it hasn't implemented that part of the standard. – Ben Jun 10 '13 at 21:36

1 Answers1

0

This can be down with MERGE syntax:

merge into table1 t1 
using ( 
  select field1, field2, field3, joinfield
  from table2
  where table2.field1 = 0
) merge_set
on (
  t1.joinfield = merge_set.joinfield 
)
when matched then update
  set 
    t1.field1 = merge_set.field1,
    t1.field2 = merge_set.field2,
    t1.field3 = merge_set.field3

SQLFiddle example

Plus look at question at reference provided by @Ben in comments.

Community
  • 1
  • 1
ThinkJet
  • 6,725
  • 24
  • 33