sql >> Base de Datos >  >> RDS >> Oracle

Oracle sql merge para insertar y eliminar pero no actualizar

No, no puede eliminar filas que no hayan sido actualizadas por el comando de combinación.
Aquí está la documentación:http://docs.oracle.com/cd/B28359_01/server.111/b28286/declaraciones_9016.htm

Eso significa que las filas deben estar actualizado. Sin embargo, no necesita actualizar todas las filas, después de ACTUALIZAR use la misma cláusula WHERE que está usando después de ELIMINAR

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