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

Langage SQL Discussion :

Update avec deux tables... syntaxe normalisée ?


Sujet :

Langage SQL

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 32
    Points : 29
    Points
    29
    Par défaut Update avec deux tables... syntaxe normalisée ?
    Voici ce que j'essaie de faire.
    Je dois updater un champ dans une banque à partir d'info d'une autre banque.
    Voici le code que j'emploie:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    update fmr1ma3
    set fmr1ma3.prenom = fmr1ma.prenom
    where fmr1ma3.perma = fmr1ma.perma
    Mais j'ai une erreur que je ne comprends pas.

  2. #2
    Scorpi0
    Invité(e)
    Par défaut
    1) Bonjour

    2) Lire la FAQ

    3) Re-lire la FAQ (rien ne vaut une deuxième lecture)

    4)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    update fmr1ma3 t1
    set prenom = (select prenom from fmr1ma t2 where t1.perma = t2.perma)
    where exists (select * from fmr1ma t2 where t1.perma = t2.perma)

  3. #3
    Membre émérite Avatar de pacmann
    Homme Profil pro
    Consulté Oracle
    Inscrit en
    Juin 2004
    Messages
    1 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consulté Oracle
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 626
    Points : 2 845
    Points
    2 845
    Par défaut
    Salut !

    Au passage, une petite question pour les experts du SQL :
    L'update de jointure (UPDATE Table1, Table2 SET...) façon MySQL, c'est dans une norme SQL quelconque ?

    Parce que sous Oracle on peut pas, et ça m'énerve. Du coup, on est obligé de faire comme dans l'exemple de Scorpio.
    Et Oracle fait la jointure pour le résultat + la semi jointure pour le WHERE.
    Du coup, il est plus efficace de faire un curseur UPDATE qui traite la jointure...

Discussions similaires

  1. update depuis deux tables avec la même clé!
    Par sql_bin dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 18/11/2010, 18h09
  2. update avec deux tables différentes
    Par vaness303 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 26/05/2009, 12h09
  3. Update avec deux tables
    Par pasbonte dans le forum Requêtes
    Réponses: 2
    Dernier message: 11/01/2009, 22h01
  4. Syntaxe Update entre deux tables
    Par lenoil dans le forum SQL
    Réponses: 5
    Dernier message: 02/10/2007, 16h12

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