Oracle は ON DUPLICATE KEY UPDATE
をサポートしていません 構文。これは MySQL 固有の構文のようです。
ほとんどの場合、MERGE
が必要なようです。 ステートメント
MERGE INTO table1 t1 USING (SELECT col1, col2, col3 FROM table2) ss ON (t1.col1 =ss.col1) -- キーが何であれ WHEN MATCHED THEN UPDATE SET t1.col1 =ss.col1 , t1.col2 =ss.col2, t1.col3 =ss.col3 一致しない場合は INSERT( t1.col1, t1.col2, t1.col3 ) VALUES( ss.col1, ss.col2, ss.col3 )コード> プレ>