IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

MERGE vs UPDATE


Sujet :

Oracle

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 149
    Points : 52
    Points
    52
    Par défaut MERGE vs UPDATE
    * 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.

  2. #2
    Membre expérimenté
    Avatar de islamov2000
    Homme Profil pro
    Ingénieur d'études & developpement en informatique
    Inscrit en
    Septembre 2007
    Messages
    814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2007
    Messages : 814
    Points : 1 717
    Points
    1 717
    Billets dans le blog
    6
    Par défaut
    Tout simplement, update pour modifier colonne(s) d'une table indépendamment .
    exp.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    update la_table set col=col*2
    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
    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;
    d'avoir Pensé à voter positivement pour ceux qui vous ont aidés et surtout à mettre si le cas.
    ça encourage.

  3. #3
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 947
    Points : 5 846
    Points
    5 846
    Par défaut
    Tu peux regarder par exemple :
    Update et Merge, quelles performances ?
    Citation Envoyé par islamov2000 Voir le message
    Tout simplement.....
    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.

  4. #4
    Expert éminent sénior Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Points : 11 252
    Points
    11 252
    Par défaut
    Citation Envoyé par tropiko Voir le message
    * 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.
    Non.
    Parfois 1) update d’une vue en ligne est plus performant, parfois 2) merge est plus performant parfois 3) update classique est plus performant.
    1) Impose une clé unique sur la table source, 2) et 3) imposent unicité des valeurs de la source.

Discussions similaires

  1. [11gR2] Merge vs update
    Par devkais dans le forum Oracle
    Réponses: 3
    Dernier message: 08/02/2014, 11h12
  2. Performance MERGE vs UPDATE
    Par francois86 dans le forum Développement
    Réponses: 2
    Dernier message: 23/12/2011, 11h46
  3. passer du insert/update à MERGE
    Par zaineb.z dans le forum SQL
    Réponses: 18
    Dernier message: 05/03/2008, 15h36
  4. Probleme Merge a cause du UPDATE WHERE
    Par Flipmode dans le forum SQL
    Réponses: 6
    Dernier message: 27/06/2007, 18h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo