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 :

Joindre deux tables


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juin 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Juin 2013
    Messages : 7
    Par défaut Joindre deux tables
    Bonjour à tous,
    j'ai une première table qui se présente comme suit:

    NUM_ID NAME ACTION SDATE 
    0017 ALAIN ENCOURS 09MAI2014
    0017 ALAIN NOK 09MAI2014
    0017 ALAIN OK 09MAI2014
    Et une deuxième table comme suit:
    NUM_ID NAME DATE AMOUNT
    0017 ALAIN 09MAI2014 250
    0017 ALAIN 11MAI2014 58
    Je veux fusionner ceux deux tables pour avoir cette table:

    NUM_ID NAME ACTION SDATE AMOUNT
    0017 ALAIN ENCOURS 09MAI2014 250
    0017 ALAIN NOK 09MAI2014 
    0017 ALAIN OK 09MAI2014 
    0017 ALAIN 11MAI2014 58
    Merci d'avance!

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 136
    Par défaut
    Tu ne précises pas les règles qui font qu'une ligne/colonne est retenue ou non.
    De ton exemple, je déduirais ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    SELECT  COALESCE(tb1.num_id, tb2.num_id)    AS num_id
        ,   COALESCE(tb1.name, tb2.name)        AS name
        ,   tb1.action                          AS action
        ,   COALESCE(tb1.sdate, tb2.date)       AS sdate
        ,   tb2.amount                          AS amount
    FROM    tb1
        FULL OUTER JOIN
            tb2
            ON  tb1.num_id  = tb2.num_id
            AND tb1.name    = tb2.name
            AND tb1.sdate   = tb2.date
            AND tb1.action  = 'ENCOURS'
    Mais mon analyse peut être faussée par le contenu du jeu d'essai...
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

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

Discussions similaires

  1. Joindre deux tables avec max sur date
    Par Asdorve dans le forum Langage SQL
    Réponses: 5
    Dernier message: 26/11/2012, 12h04
  2. Problèmes pour joindre deux tables !
    Par glaine dans le forum DB2
    Réponses: 7
    Dernier message: 28/09/2010, 10h19
  3. Réponses: 1
    Dernier message: 16/09/2009, 13h30
  4. joindre deux tables créées par requêtes
    Par bernard6 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 04/04/2007, 11h27
  5. [D7-ACCESS-ADO] Joindre deux tables
    Par dleu dans le forum Bases de données
    Réponses: 6
    Dernier message: 25/11/2006, 14h16

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