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 :

un remplissage conditionnel


Sujet :

Langage SQL

  1. #1
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    643
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 643
    Points : 94
    Points
    94
    Par défaut un remplissage conditionnel
    Salut
    j'ai une table(T1) qui contient une colonne vide,et je veut remplir cette colonne vide à partir d'une autre table(T2).
    la condition qu'il faut pour remplir la table T1 est :
    si T1.x = T2.x alors
    T1.y <- T2.z


    merci

  2. #2
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 915
    Points
    79 915
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    UPDATE T1 SET T1.y =
    (
       SELECT T2.z 
       FROM T1, T2 
       WHERE T1.x = T2.x
    )
    WHERE T1.clef_primaire = 
    (
       SELECT T1.clef_primaire
       FROM T1, T2 
       WHERE T1.x = T2.x
    );
    Où clef_primaire est la clef primaire de ta table T1.

  3. #3
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    643
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 643
    Points : 94
    Points
    94
    Par défaut
    en executant cette requete sous access il me sort un message "L'operation doit utiliser une requête qui peut être mise à jour " ???
    et rien ne change dans ma table ????

  4. #4
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 915
    Points
    79 915
    Par défaut
    Oui mais en fait ma requête est erronée. ^^
    Elle marche si il n'y a qu'un seul couple T1.x = T2.x mais elle ne vaut plus rien lorsqu'il y en a plusieurs.


    Désolé!

  5. #5
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Points : 4 644
    Points
    4 644
    Par défaut
    salut,

    essaie quelque chose dans ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    update t1 join t2
    set t1.y = t2.z
    where t1.x = t2.x

  6. #6
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    643
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 643
    Points : 94
    Points
    94
    Par défaut
    il y a une erreur , erreur de syntaxe dans l'instruction UPDATE et le curseur s'arrete sur JOIN ????

  7. #7
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Points : 4 644
    Points
    4 644
    Par défaut
    bon, sans le join alors :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE t1,t2
    SET t1.y = t2.z
    WHERE t1.x = t2.x

  8. #8
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    643
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 643
    Points : 94
    Points
    94
    Par défaut
    merci, sa marche trés bien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 06/05/2015, 14h00
  2. Remplissage conditionnel automatique d'un tableau
    Par kris12 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/06/2012, 15h33
  3. [AC-2003] Remplissage conditionnel d'un champ dans un formulairee
    Par castours dans le forum IHM
    Réponses: 1
    Dernier message: 30/01/2011, 19h46
  4. Remplissage conditionnel de champs
    Par Nerva dans le forum Débuter
    Réponses: 7
    Dernier message: 27/07/2010, 16h58
  5. [XL-2007] Remplissage conditionnel d'une combobox sur une partie seulement de la base
    Par csempere dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 17/06/2010, 14h52

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