Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Wymagane zapytanie SQL z wyjaśnieniem ON DUPLICATE KEY UPDATE

Oracle nie obsługuje ON DUPLICATE KEY UPDATE składnia. To wygląda na składnię specyficzną dla MySQL.

Najprawdopodobniej chciałbyś MERGE oświadczenie

MERGE INTO table1 t1
  USING (SELECT col1, col2, col3 
           FROM table2) ss
     ON (t1.col1 = ss.col1) -- whatever the key is
   WHEN MATCHED THEN
     UPDATE SET t1.col1 = ss.col1,
                t1.col2 = ss.col2,
                t1.col3 = ss.col3
   WHEN NOT MATCHED THEN 
     INSERT( t1.col1, t1.col2, t1.col3 )
       VALUES( ss.col1, ss.col2, ss.col3 )



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kiedy należy zagnieżdżać bloki PL/SQL BEGIN...END?

  2. Pakiet :cx_Oracle dla Pythona 3.5, windows64 bit. Wyrocznia 11.2.0.1.0

  3. Hibernacja adnotacji w przestrzeni tabel Oracle

  4. Jak wywołać procedurę składowaną Oracle w Pythonie?

  5. Wybierz wiersze, gdy wartość kolumny zmieni się między datą w Oracle?