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

Access Discussion :

Regrouper 2 tables ayant un même référentiel


Sujet :

Access

  1. #1
    Candidat au Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Août 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Août 2016
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Regrouper 2 tables ayant un même référentiel
    Bonjour à tous,

    je souhaitais faire quelque chose que je pensais très simple, mais visiblement ma méthodologie n'est pas la bonne.

    Contexte : regrouper 2 tables en une par les critères communs. Ce sont des référentiels de 2 périmètres pour lesquels une correspondance vers un référentiel commun a déjà été faite

    Concrètement :

    - Champs de la Table du périmètre 1 (Tab P1) :
    Référentiel Commun 1 (RC1) - Référentiel Commun 2 (RC2) - Référentiel Propre (P1RP1) - Référentiel Propre 2 (P1RP2)
    - Tab P2 : RC1 - RC2 - P2RP1 - P2RP2


    - Table finale voulue : RC1 - RC2 - P1RP1 - P1RP2 - P2RP1 - P2RP2

    RC2 est la clé primaire sur laquelle se fait la relation entre les tables.

    Sachant que pour une valeur de RC2 peut etre associé par exemple x valeurs de P1RP2 et y P2RP2.

    Et quand je fais ma requête, les correspondances se font bien mais je me retrouve avec un produit cartésien entre P1RP2 et P2RP2.
    Ce que je souhaiterai c'est avoir par exemple pour un RC2 donné, 3 occurrences pour P1RP2 et 1 occurrence pour P2RP2 puis 2 vides.

    J'ai essayé d'être le plus clair possible, pas sur que ce le soit tant que ça.

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonjour,

    Normalement une requête avec liaison à gauche sur les 2 champs communs RC1 et RC2 devrait faire apparaitre TOUTES LES DONNEES d'une table par rapport à l'autre (en faisant participer tous les champs des 2 tables).
    Maintenant laquelle des 2 tables P1 et P2 aurait plus de données ?? Il faudrait un jeu de données clair pour y répondre.

    Si ce n'est pas défini parce que on ne sait pas, on fait 2 requête avec jointures à gauche et à droite et on fait une requête UNION après.

    Cordialement.
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  3. #3
    Candidat au Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Août 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Août 2016
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Merci pour la réponse. Je récupère bien toutes les données pour chacune des tables. Mon souci est que je récupère trop de données, avec des doublons.
    Si pour RC2, j'ai deux données (D1 et D2) en P1 et 3 en P2 (D3, D4 et D5), je récupère 3 fois D1 et D2 et 2 fois D3, D4, D5.

    Tab P1 :
    Champs : RC1 - RC2 - P1RP1 - P2RP2
    Données : RC1 - RC2 - D'1 - D1
    ---------- RC1 - RC2 - D'2 - D2


    Tab P2 :
    Champs : RC1 - RC2 - P1RP1 - P2RP2
    Données : RC1 - RC2 - D'3 - D3
    ---------- RC1 - RC2 - D'4 - D4
    ---------- RC1 - RC2 - D'5 - D5

    Concrètement cela donne :
    Champs : RC1 - RC2 - P1RP1 - P1RP2 - P2RP1 - P2RP2

    Données :RC1 - RC2 - D'1 - D1 - D'3 - D3
    ---------- RC1 - RC2 - D'1 - D1 - D'4 - D4
    ---------- RC1 - RC2 - D'1 - D1 - D'5 - D5
    ---------- RC1 - RC2 - D'2 - D2 - D'3 - D3
    ---------- RC1 - RC2 - D'2 - D2 - D'4 - D4
    ---------- RC1 - RC2 - D'2 - D2 - D'5 - D5

    Et je voudrais "simplement", quelque chose comme :
    RC1 - RC2 - D'1 - D1 - D'3 - D3
    RC1 - RC2 - D'2 - D2 - D'4 - D4
    RC1 - RC2 - Rien - Rien - D'5 - D5


    Ma requête est faite ainsi :
    La table "référentiel commun" avec les champs RC1-RC2 reliée à tabP1 et tabP2 au niveau de RC2

  4. #4
    Candidat au Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Août 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Août 2016
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Après moult essais, je n'arrive pas plus.

    Concrètement, comment avoir une "simple" juxtaposition des données en colonne et non un produit matriciel?

    Alors avec des exemples plus concrets, voici 3 tables :

    1) "Référentiel Commun", 2 champs :
    Fruit - Pomme

    2) "Référentiel propre 1" :
    Fruit - Pomme - Granny
    Fruit - Pomme - Gala

    3) "Référentiel propre 2":
    Fruit - Pomme - Golden
    Fruit - Pomme - Reinette

    J'obtiens, par une requête liant les deux tables "Référentiel propre" au "référentiel commun" via "Pomme":
    Fruit - Pomme - Granny - Golden
    Fruit - Pomme - Granny - Reinette
    Fruit - Pomme - Gala - Golden
    Fruit - Pomme - Gala- Reinette


    Et moi j'aimerais avoir :
    Fruit - Pomme - Granny - Golden
    Fruit - Pomme - Gala - Reinette

    Bref, à part de la compote (ou de la bouillie), je n'en fais pas grande chose de mes pommes.

    Il y a une donnée que je dois mal (ou pas) indiquer mais je sèche... Je suppose que comme il n'y a pas de relation par exemple entre Granny et Golden, il est pas jouasse de ne m'afficher que cela et dans le doute, il m'affiche tout.
    Du coup, je le remercie grandement de tant de précaution, mais ça ne m'arrange pas.

  5. #5
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonsoir,

    En fait, il n'y a pas de logique (relations) entre ton référentiel 1 et Référentiel 2, c'est pour cela que tu as un produit cartésien.

    Si tu arrives à expliquer pourquoi il n'y a pas de Granny Reinette et de Gala Golden, ou pourrait t'aider à trouver la solution.

    Cordialement.
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  6. #6
    Candidat au Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Août 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Août 2016
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Merci pour ton aide.
    Alors il n'y a pas de relation, car le seul lien entre les variétés vient du fait qu'il s'agit de pommes.

    Par exemple :
    Granny et Gala : variétés venant de la ferme A
    Golden et Reinette : variétés venant de la ferme B

    Et je veux compiler de manière unique les variétés qui viennent de chaque ferme, en gardant l'origine de la ferme. Mais il n'y a pas de lien en soi entre variétés de chaque ferme.

    Cela donnerait des champs organisés ainsi :

    Typologie de fruits - Variétés de la ferme A - Variétés de la ferme B

    En espérant avoir été plus clair dans ma problématique.

    Merci.

Discussions similaires

  1. Plusieurs tables ayant la même structure
    Par HRS dans le forum PL/SQL
    Réponses: 3
    Dernier message: 08/11/2010, 21h38
  2. Stocker des tables ayant le même nom
    Par caroleo63 dans le forum Alimentation
    Réponses: 5
    Dernier message: 20/06/2008, 21h15
  3. formulaires ayant une même table comme source
    Par stdebordeau dans le forum IHM
    Réponses: 2
    Dernier message: 11/04/2008, 17h44
  4. ajouter code INSEE entre 2 tables ayant même nom
    Par newby007 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 27/02/2008, 12h07
  5. [Requête] plusieurs champs dans une même table ayants la même source
    Par Christophe93250 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 25/04/2006, 16h18

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