Oracle
 sql >> Database >  >> RDS >> Oracle

Oracle sql merge per inserire ed eliminare ma non aggiornare

No, non puoi eliminare le righe che non sono state aggiornate dal comando di unione.
Ecco la documentazione:http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_9016.htm

Ciò significa che le righe devono essere aggiornato. Tuttavia, non è necessario aggiornare tutte le righe, dopo UPDATE utilizzare la stessa clausola WHERE utilizzata dopo DELETE

when matched then update set dummy=dummy
    where a_value not in ('ace','afk')
delete 
    where a_value not in ('ace','afk')