1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    janvier 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : janvier 2018
    Messages : 2
    Points : 1
    Points
    1

    Par défaut Plusieurs relations entre deux tables

    Bonjour à vous et bonne année,

    Mon but est de créer une requête permettant une synthèse avec les champs suivants (je n'indique que certains pour simplifier) :

    COMPONENT | Désignation | Code fournisseur | Pays | Mode de transport terrestre | Code ELCD mode transport terrestre | Mode de transport maritime | Code ELCD mode de transport maritime

    Pour appuyer mon discours j'utilise les quatre images mise en pièces jointes :

    Image 1

    - Je vais chercher les informations par composant (COMPONENT) dans la table [Composant_test]
    - Je veux les informations sur le fournisseur selon son code dans la table [Fournisseurs]

    Image 2

    - Résultats de la requête 1 : Fonctionne

    Image 3

    - Idem à image 1
    - En plus maintenant je veux obtenir des informations sur le pays du fournisseur
    - Dans ces informations je veux obtenir les codes ELCD correspondant au transport terrestre et au transport maritime

    Image 4

    - Résultats de la requête 2 (celle énoncé plus haut) : Ne fonctionne pas

    Je sais que cela vient du fait que pour une même table, deux de mes champs font appel à la même table mais je ne vois pas comment y remédier ? Auriez-vous une idée ?

    Je peux bien entendu vous donner toutes les informations complémentaires nécessaires.

    En vous remerciant par avance.
    Images attachées Images attachées     

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    octobre 2005
    Messages
    10 912
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : octobre 2005
    Messages : 10 912
    Points : 16 301
    Points
    16 301

    Par défaut

    Bonjour.

    L'astuce consiste à ajouter une seconde fois la même table.
    Access va créé à l'écran (pas physiquement) une nouvelle table avec laquelle on pourra faire la liaison.
    Cette table a généralement un nom qui ressemble à NomTable_1.

    Note qu'on n'est pas limité à 2 et qu'on peut faire l'oppération plusieurs fois.
    Je n'ai jamais testé pour savoir jsuqu'à combien de copies fantômes on pouvait aller.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    janvier 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : janvier 2018
    Messages : 2
    Points : 1
    Points
    1

    Par défaut

    Bonjour,

    Tout d'abords merci pour votre réponse rapide.

    Malheureusement cela ne fonctionne pas, je m'explique. J'avais déjà créer une deuxième table (image 1) mais dans la requête cela n'apparaissait pas (Image 2) donc je l'ai fait (Image 3) mais je ne peux préciser 1 à plusieurs. Malgré tout cela ne fonctionne pas (Image 4)... J'ai regardé le code SQL et il apparaît [CODE ELCD_1] j'ai donc essayer de supprimer le chiffre pour que cela fasse bien référence à la table CODE ELCD, sans succès....

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT BOM_Importée.COMPONENTNUMBER, Composants.[Code fournisseur], Fournisseurs.Pays, Pays.[Mode de transport terrestre], Pays.[Mode de transport maritime], [Codes ELCD].[Code ELCD], [Codes ELCD].[Code ELCD], [Codes ELCD].[Code ELCD]
    FROM ((Fournisseurs INNER JOIN (([Codes ELCD] INNER JOIN Composants ON [Codes ELCD].Désignation = Composants.[Matière 1]) INNER JOIN BOM_Importée ON Composants.[Code E2E] = BOM_Importée.COMPONENTNUMBER) ON Fournisseurs.N°Fournisseur = Composants.[Code fournisseur]) INNER JOIN Pays ON (Pays.[Nom du pays] = Fournisseurs.Pays) AND ([Codes ELCD].Désignation = Pays.[Mode de transport terrestre])) INNER JOIN [Codes ELCD] AS [Codes ELCD_1] ON Pays.[Mode de transport maritime] = [Codes ELCD_1].Désignation;


    Je vais essayer de créer des tables "tampons" et je vous tiens au courant (si vous avez une "méthode" plus propre je suis preneur)Nom : Relations.PNG
Affichages : 22
Taille : 59,4 KoNom : Image 3.PNG
Affichages : 21
Taille : 105,5 KoNom : Création deuxieme table requête.PNG
Affichages : 21
Taille : 57,5 KoNom : Résultats non concluant.PNG
Affichages : 22
Taille : 8,8 Ko

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    octobre 2005
    Messages
    10 912
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : octobre 2005
    Messages : 10 912
    Points : 16 301
    Points
    16 301

    Par défaut

    Bonjour.

    De ce que je vois il te faut 3 fois la table Code ELCD.

    • Une fois ta jointure avec pour [Matiere 1]
    • Une fois ta jointure avec pour [Mode de transport terrestre]
    • Une fois ta jointure avec pour [Mode de transport maritime]


    Actuellement la double liaison [Matiere 1] et [Mode de transport terrestre] suppose que les 2 tables ont des champs avec la même valeur.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

Discussions similaires

  1. Plusieurs relations entre deux tables
    Par simnitch dans le forum Doctrine2
    Réponses: 1
    Dernier message: 06/05/2014, 18h17
  2. [AC-2010] Plusieurs Relations entre deux tables
    Par Babzoo dans le forum Modélisation
    Réponses: 5
    Dernier message: 18/08/2013, 18h57
  3. Problème de relation entre deux tables + autre chose
    Par Goth_sensei dans le forum Langage SQL
    Réponses: 7
    Dernier message: 30/03/2006, 21h49
  4. [XSD] Relation entre deux tables
    Par fd59 dans le forum Valider
    Réponses: 2
    Dernier message: 10/09/2005, 00h33
  5. Relation entre deux tables
    Par manel007 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 04/03/2005, 17h54

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