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 :

Correction requête jointure


Sujet :

Langage SQL

  1. #1
    Membre régulier
    Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 101
    Points : 80
    Points
    80
    Par défaut Correction requête jointure
    Bonjour à toutes et à tous.
    Suite de la discussion "Aide pour une modélisation".
    À partir des deux tables suivantes :
    1. membres_mbr : mbr_id; mbr_nom; mbr_prenom
    2. licences_lcc : lcc_id; mbr_id; fdt_id; lcc_numero (fdt_id renvoie à la table des fédérations de coureurs)

    J'ai construit la requête suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT m.mbr_nom, m.mbr_prenom, l.lcc_numero 
    FROM membres_mbr m 
    INNER Join licences_lcc l ON m.mbr_id = l.mbr_id 
    WHERE l.fdt_id = 1 
    ORDER BY m.mbr_nom, m.mbr_prenom;
    qui fonctionne.

    Une troisième table a été nécessaire pour stocker des informations variables chaque année :
    • annee_licences_alc : alc_id; lcc_id; alc_annee; ....

    La requête suivante donne les résultats escomptés :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT m.mbr_nom, m.mbr_prenom, l.lcc_numero 
    FROM membres_mbr m, licences_lcc l, annee_licences_alc a
    WHERE l.fdt_id = 1 AND m.mbr_id = l.mbr_id AND a.alc_annee = 2016 AND l.lcc_id = a.lcc_id 
    ORDER BY m.mbr_nom, m.mbr_prenom;
    qui fonctionne également.

    Y-a-t-il moyen d'utiliser une jointure interne pour obtenir le même résultat. J'ai essayé mais ne sais pas faire.
    Merci d'avance, Miflon

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Bonjour,
    Je ne vois pas trop où est la difficulté, il suffit de partir de la première requête, et d'ajouter la jointure supplémentaire:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SELECT m.mbr_nom, m.mbr_prenom, l.lcc_numero 
    FROM membres_mbr m 
    INNER Join licences_lcc l ON m.mbr_id = l.mbr_id 
    inner join annee_licences_alc a on l.lcc_id = a.lcc_id 
    WHERE l.fdt_id = 1 and a.alc_annee = 2016
    ORDER BY m.mbr_nom, m.mbr_prenom;

    Tatayo.

  3. #3
    Membre régulier
    Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 101
    Points : 80
    Points
    80
    Par défaut
    Merci tatayo. Tout fonctionne très bien. Je n'avais pas essayé deux INNER JOIN d'affilée. Résolu!

    Miflon.

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

Discussions similaires

  1. problème requête à jointure multiple...
    Par Ricardo_Tubbs dans le forum Access
    Réponses: 6
    Dernier message: 09/02/2006, 16h45
  2. [Débutant]Soucis requête jointure externes (8-i)
    Par jdotti dans le forum Oracle
    Réponses: 7
    Dernier message: 14/10/2005, 15h39
  3. [requêtes] Jointures
    Par Ptit_boeuf dans le forum Langage SQL
    Réponses: 3
    Dernier message: 28/07/2005, 10h23
  4. Problème requête jointure
    Par Isa31 dans le forum Langage SQL
    Réponses: 36
    Dernier message: 16/05/2005, 13h46
  5. [SQL] Requête à jointure qui ne fonctionne pas
    Par Bensor dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/12/2004, 16h10

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