* Bonjour, *
Est-il vrai qu'un MERGE est plus performant qu'un UPDATE dans une base Oracle 11g ?
Quelle est la différence entre un MERGE (mode update) et un update classique ?
avantages et inconvénients de chacun ?
merci.
* Bonjour, *
Est-il vrai qu'un MERGE est plus performant qu'un UPDATE dans une base Oracle 11g ?
Quelle est la différence entre un MERGE (mode update) et un update classique ?
avantages et inconvénients de chacun ?
merci.
Tout simplement, update pour modifier colonne(s) d'une table indépendamment .
exp.
Et,merge pour modifier colonne(s) d'une table avec des données d'une autre table.
Code : Sélectionner tout - Visualiser dans une fenêtre à part update la_table set col=col*2
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 MERGE INTO la_table2 B USING la_table1 A ON A.id=B.id WHEN MATCHED THEN UPDATE SET B.champ = A.champ;
Tu peux regarder par exemple :
Update et Merge, quelles performances ?
Ca me semble nettement trop simplifié, l'objectif est de supprimer la partie filtre de la requête avec UPDATE, impliquant généralement une double exécution de la sous-requête ou dans ton exemple un double accès à la table la_table1, mais MERGE n'est jamais une obligation (dans sa version uniquement avec when matched) juste une possibilité qui peut ou non améliorer les perfs.
Partager