Relations

Fermé
Max IT - 25 mai 2017 à 21:57
 Max IT - 26 mai 2017 à 18:51
Bonjour,

Mon dernier travail sur Acces porte sur une base de données très enrichie, dans celle ci se trouve deux tables dont j'aimerais ressortir des informations.

Je m'explique. L'une d'elle comporte plus de 40 000 noms, l'autre table comporte un peu plus de 900 noms.

Les 900 noms sont les personnes membres d'un organisme, peu importe, l'idée est que ces 900 noms sont potentiellement parmis les 40 000 mais j'ignore comment interroger la base pour le savoir.
Chercher manuellement est evidemment impossible.

Pour ce qui est des requetes, cela est difficile car les tables ne sont justement pas en liens, je cherche à les mettre en liens, sachant que les 900 de l'une se trouvent dans les 40 000 de l'autre, le liens est logique, mais pas faisable tel quel.


Pourriez vous m'aider, je ne sait pas si je suis clair, je vous remercie

4 réponses

yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477
25 mai 2017 à 23:00
bonsoir, tu es très clair, peu concret, donc très flou.
quels sont les noms des champs dans tes tables? quels sont les champs qui permettent d'identifier précisément un enregistrement présent dans les deux tables?
que veux-tu réaliser précisément? simplement avoir la liste des noms présents simultanément dans les deux tables?
0
Merci !

Je n'esperais pas une réponse à vraie dire, je ne tombe que sur des sujets non clos, le problème est visiblement trop complexe ...

Je revois le système de gestion de base de donnée pour L'union française à Montreal, je dispose d'une liste de membres de l'union française, et d'une liste des français à Montreal.
Les membres de l'union française sont donc forcement dans la liste des français à montreal, le problème est que je ne saurait pas comment les trouver dans une liste de 60 000 noms.

L'intéret de Access etait evidemment de pouvoir les trouver automatiquement, mais cela s'avère plus compliqué que prévu.

Les enregistrements communs à dégager dans les deux tables serait donc simplement. Nom Prenom
0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477
26 mai 2017 à 08:35
et bien, supposant que les noms de tes tables sont union et montreal, tu peux faire ainsi:
select union.*, montreal.* from union, montreal where union.Nom = montreal.Nom and union.Prenom = montreal.Prenom

qu'en penses-tu?
0
Max IT > yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024
26 mai 2017 à 17:33
Merci beaucoup, j'ai pensé à une commande du type.

Le problème est que les bases que l'on m'a fournis provienne d'excel, j'ai tenté de renommer les tables au mieux. en réalité elles s'appellent Membres UF et Français Montréal, très mauvais choix de ma part...

j'avais tenté une commande du type

SELECT * FROM 'Français Montréal' LEFT JOIN 'Membres UF' ON 'Membres UF'.id='Français Montréal'.id

aucune commandes ne fonctionne je ne comprend pas.
Je pense abandonner l'idée tout simplement, les données ont été mal organisé dès l'origine, ils imaginent que je peut revoir ça sans problèmes...
0
Bonjour
Tu peux essayer de faire une requete de recherche de de doublon sur les 2 tables a l'aide de l'outil de requete d'access
0
Merci, le problème des requetes de ce type est qu'elles ne s'appliquant qu'a plusieurs champs dans une meme tables, pas entre les champs de plusieurs tables...

A moins qu'il y ai un moyens ?
Je chercher toujours...
0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477
26 mai 2017 à 18:00
et ainsi?
select u.*, m.* from [Membres UF] as u, [Français Montréal] as m where u.Nom = m.Nom and u.Prenom = m.Prenom

si cela ne fonctionne pas,merci de répondre à ceci:
quels sont les noms et fonctions des champs dans tes tables?
quels sont les champs qui permettent d'identifier précisément un enregistrement présent dans les deux tables?
à quoi sert le champ "id"?
0
Je dois certainement mal m'y prendre tout simplement...

J'ouvre le Builder dans un Query design où je place les deux tables qui m'interesse, je note ainsi l'expression dans une nouvelle colonne.
Je crois que le probleme viens de la...

Il me refuse l'expression pour erreur de synthaxe à tous les coups
0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477 > Max IT
26 mai 2017 à 18:23
en effet.
quand tu es dans un query design, passe simplement en mode d'affichage SQL, et remplace le texte complet par la requête suggérée.
0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477 > Max IT
26 mai 2017 à 18:25
ce que tu peux faire aussi, après avoir placé tes deux tables, c'est créer les liens entre ces deux tables, en reliant simplement entre les deux tables chacun des champs liant les tables.
0
Merci infiniment ! j'ai des résultats, bien que je pense que cela n'est pas complet, mais il est possible que certains noms n'ai pas été écrit de la même manière, ça n'est plus mon problème...

J'avais créé une table intermediaire pour relier les deux tables, je penserait dorénavant à passer en affichage SQL
Cela m'a été d'une grande aide, je vais tenter à partir des différentes aides à résoudre la suite par moi même, j'ai déjà un début
0