Updating deleting predicates oracle
You would specify the where_clause when you want Oracle to execute the insert operation only if the specified condition is true.The condition can refer only to the MERGE data source.MERGE is what is known as a deterministic statement.That is, you can only update the same row of the target table once in the same MERGE statement.You should use the MERGE statement to select rows from one or more sources for insert or update of one or more tables.The decision to perform an insert or update is based on conditions specified by you.The MERGE statement is designed to combine multiple operations to reduce the complexity of mixed insert and update operations.
If the MERGE statement deletes a row, any delete triggers defined on the target table will be activated for each row deletion. The WHERE clause can be specified by itself or in concert with the merge_insert_clause.
The MERGE statement uses the merge_insert_clause when the condition of the ON clause is false.
As with any normal insert, if the insert clause is executed, all insert triggers defined on the target table are fired.
If the condition is false, the update operation is skipped when merging the row into the target table.
You can specify the DELETE where_clause to clean up data in a table while the MERGE statement is populating or updating it.