Sos Requet Jointure entre 2 tables
Fermé
moitropdebutant
Messages postés
3
Date d'inscription
dimanche 12 octobre 2008
Statut
Membre
Dernière intervention
24 novembre 2008
-
29 oct. 2008 à 09:37
MoiTropDebutant - 29 oct. 2008 à 20:30
MoiTropDebutant - 29 oct. 2008 à 20:30
A voir également:
- Sos Requet Jointure entre 2 tables
- 2 comptes whatsapp - Guide
- Tables des matieres - Guide
- 2 ecran pc - Guide
- Word numéro de page 1/2 - Guide
- Jdownloader 2 - Télécharger - Téléchargement & Transfert
3 réponses
SebManfred
Messages postés
484
Date d'inscription
mardi 28 août 2007
Statut
Membre
Dernière intervention
20 mai 2011
128
29 oct. 2008 à 09:46
29 oct. 2008 à 09:46
à mon sens, il faut établir des tables intermédiaires, sachant que le principal probleme semble etre que tu te mélange les pinceaux entre le fait qu'un magazin est dans une ville (locallisation géographique) et qu'il couvre plusieurs villes (couverture)
la localisation géographique est à associer au magasin (à moins que ca soit un magasin qui ait des enseignes dans plusieurs villes, mais dans ce cas, il faudrait peut-etre prévoir une table enseigne) donc un magasin (ou une enseigne) n'a qu'une seule localisation, mais peut avoir plusieurs villes à couvrir, ce qui peut se gérer par une table couverture
je t'ai pas trop embrouillé?
la localisation géographique est à associer au magasin (à moins que ca soit un magasin qui ait des enseignes dans plusieurs villes, mais dans ce cas, il faudrait peut-etre prévoir une table enseigne) donc un magasin (ou une enseigne) n'a qu'une seule localisation, mais peut avoir plusieurs villes à couvrir, ce qui peut se gérer par une table couverture
je t'ai pas trop embrouillé?
Mikey_UFC
Messages postés
312
Date d'inscription
jeudi 8 mars 2007
Statut
Membre
Dernière intervention
2 août 2010
1
29 oct. 2008 à 09:47
29 oct. 2008 à 09:47
Je pense qu'il te faut une 3ème table que tu peux appeler livraison, livrer ou ville_magasin ( pour montrer qu'elle fait le lien ) dans laquelle tu auras :
- id_mag
- id_ville
la requête pour avoir tous les magasins qui livrent une ville deviendra :
Code que tu devrais normalement avoir quand tu affiches la liste des villes.
Par contre, il faudra remplir la table pour savoir quelles villes sont livrées par tel ou tel magasin.
Si ce n'est pas ce que tu veux, explique en détail, et je te donnerai une structure adaptée à ton problème.
- id_mag
- id_ville
la requête pour avoir tous les magasins qui livrent une ville deviendra :
SELECT * FROM MAGASIN M INNER JOIN VILLE_MAGASIN VM ON VM.id_mag = M.id_mag WHERE id_ville = code_de_la_ville_choisi
Code que tu devrais normalement avoir quand tu affiches la liste des villes.
Par contre, il faudra remplir la table pour savoir quelles villes sont livrées par tel ou tel magasin.
Si ce n'est pas ce que tu veux, explique en détail, et je te donnerai une structure adaptée à ton problème.
Gwendo69
Messages postés
147
Date d'inscription
lundi 29 septembre 2008
Statut
Membre
Dernière intervention
28 juin 2013
13
29 oct. 2008 à 10:02
29 oct. 2008 à 10:02
Salut,
Alors en fait tu peux pas faire directement "SELECT nom_mag From Magasins, villes INNER JOIN id_mag = id_ville".
Lorsque tu passes du MCD au MLD et que tu as 0,n/1,n , 0,n/0,n ou 1,n/1,n, en gros quand les deux se terminent par n, tu dois faire une table 'intermédiaire' en quelque sorte qui a pour clés primaires ET étrangères les deux clés des tables liés (id_ville et id_mag). Tu lui donne le nom que tu veux.
Exemple : Villes (id_ville, nom_ville),
Magasins (id_mag, nom_mag) et
Villes_Magasins (#id_ville, #id_mag). le '#' signifie que c'est une clé étrangère.
Tu fais donc DEUX liaisons. Une entre Villes et Villes_Magasins, et une autre entre Villes_Magasins et Magasins.
J'espère que c'est un peu comprehensible, si tu as encore des pb n'hesite pas. Bon courrage pour la suite.
Alors en fait tu peux pas faire directement "SELECT nom_mag From Magasins, villes INNER JOIN id_mag = id_ville".
Lorsque tu passes du MCD au MLD et que tu as 0,n/1,n , 0,n/0,n ou 1,n/1,n, en gros quand les deux se terminent par n, tu dois faire une table 'intermédiaire' en quelque sorte qui a pour clés primaires ET étrangères les deux clés des tables liés (id_ville et id_mag). Tu lui donne le nom que tu veux.
Exemple : Villes (id_ville, nom_ville),
Magasins (id_mag, nom_mag) et
Villes_Magasins (#id_ville, #id_mag). le '#' signifie que c'est une clé étrangère.
Tu fais donc DEUX liaisons. Une entre Villes et Villes_Magasins, et une autre entre Villes_Magasins et Magasins.
J'espère que c'est un peu comprehensible, si tu as encore des pb n'hesite pas. Bon courrage pour la suite.
29 oct. 2008 à 20:05
Je viens d'Ouvrir ma Boite Mail et j'y trouve 3 réponse à ma question qui me trotte depuis 6 mois , touT cela pour Dire Franchement Un Grand Merci pour ta Réponse aussi Rapide et j'y bosse !
Je te souhaite Une Excelente Soirée à toi et aux Tiens !
A+