Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Oracle sql merge para inserir e excluir, mas não atualizar


Não, você não pode excluir linhas que não foram atualizadas pelo comando de mesclagem.
Aqui está a documentação:http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_9016.htm

Isso significa que as linhas devem ser atualizado. No entanto, você não precisa atualizar todas as linhas, após UPDATE use a mesma cláusula WHERE que você está usando após DELETE
when matched then update set dummy=dummy
    where a_value not in ('ace','afk')
delete 
    where a_value not in ('ace','afk')