Accueil > Forum > > > > Quand 2 clés etrangeres se référent à un meme champs
Quand 2 clés etrangeres se référent à un meme champs
mardi 3 janvier 2006 à 20:49:21 |
Quand 2 clés etrangeres se référent à un meme champs

Franquito
|
Bonsoir à tous
Tout d'abord je vous explique mon architecture BDD
table Historique :
*id_historique
*actif
*passif
*id_piece
*id_action
*time
table Joueur :
*id_joueur
*pseudo
Voila, les attributs passif et actif de la table Historique sont
enfait des clés étrangères se referant à l'id_joueur de la table Joueur.
Je voudrait faire une requête sql qui m'affiche le tableau historique avec les pseudos respectifs des clés actif et passif.
Comment faire une jointure quand on a deux clés etrangere se referant au meme champs ?
|
|
mercredi 4 janvier 2006 à 01:19:00 |
Re : Quand 2 clés etrangeres se référent à un meme champs

Franquito
|
J'ai fait un petit shema pour mieux comprendre :
|
|
mercredi 4 janvier 2006 à 08:56:54 |
Re : Quand 2 clés etrangeres se référent à un meme champs

f6xara
|
Celà ne marche-t-il pas? Select * from historique, joueur where actif=id_joueur and passif = id_joueur
|
|
mercredi 4 janvier 2006 à 09:04:36 |
Re : Quand 2 clés etrangeres se référent à un meme champs

Franquito
|
non car comment selectionne tu les pseudos ?
|
|
mercredi 4 janvier 2006 à 09:08:51 |
Re : Quand 2 clés etrangeres se référent à un meme champs

f6xara
|
Je suis pas sur de comprendre ta réponse mais peut être une solution
Select * from historique, joueur where actif=id_joueur and passif = id_joueur where pseudo = 'le pseudo"
|
|
mercredi 4 janvier 2006 à 09:33:12 |
Re : Quand 2 clés etrangeres se référent à un meme champs

Franquito
|
Enfait je souhaite afficher le tableau Historique, mais a la place
d'avoir les numero d'actif et passif, je voudrais avoir leur pseudo.
J'ai un debut de réponse avec cette maniere de proceder, mais le probleme c'est que cela n'affiche rien lol.
SELECT h.id_historique, j1.pseudo AS joueurActif, j2.pseudo AS joueurPassif, h.id_piece, h.id_action, h.time FROM Historique AS h, Joueur AS j1, Joueur AS j2 WHERE h.actif = j1.id_joueur AND h.passif = j2.id_joueur AND (h.actif =14 OR h.passif =14 )
|
|
mercredi 4 janvier 2006 à 09:43:48 |
Re : Quand 2 clés etrangeres se référent à un meme champs

f6xara
|
Tu dois le faire sous 2 requetes car tu fais les jointures correspondantes à une requete ou tu voudrais tous les passifs ET actifs SELECT id_historique, pseudo, id_piece, id_action, time FROM Historique , Joueur WHERE actif = id_joueur AND actif =14
SELECT id_historique, pseudo, id_piece, id_action, time FROM Historique , Joueur WHERE passif = id_joueur AND passif =14
|
|
mercredi 4 janvier 2006 à 09:57:28 |
Re : Quand 2 clés etrangeres se référent à un meme champs

malalam
|
Hello,
SELECT HISTO.ID_PIECE, HISTO.ID_ACTION, HISTO.TIME, JR.PSEUDO AS PSEUDO_ACTIF, JR2.PSEUDO AS PSEUDO_PASSIF FROM HISTORIQUE HISTO, JOUEUR JR, JOUEUR JR2 WHERE JR2.PSEUDO = (SELECT JOUEUR.PSEUDO FROM JOUEUR WHERE JOUEUR.ID_JOUEUR = HISTO.PASSIF) AND JR.PSEUDO = (SELECT JOUEUR.PSEUDO FROM JOUEUR WHERE JOUEUR.ID_JOUEUR = HISTO.ACTIF)
|
|
mercredi 4 janvier 2006 à 10:19:23 |
Re : Quand 2 clés etrangeres se référent à un meme champs

Franquito
|
salut malalam,
Les requetes imbriqués sont elles la seule solution ? Car ma bdd ne les supporte pas :(
|
|
mercredi 4 janvier 2006 à 10:25:17 |
Re : Quand 2 clés etrangeres se référent à un meme champs

malalam
|
Réponse acceptée !
Alors, 2 requêtes :-(
SELECT
HISTO.ID_PIECE, HISTO.ID_ACTION, HISTO.TIME, HISTO.PASSIF, JR.PSEUDO AS PSEUDO_ACTIF FROM HISTORIQUE HISTO, JOUEUR JR WHERE HISTO.ACTIF = JR.ID_JOUEUR
mysql_query ... while ($res = mysql_fetch_assoc(...)) { // SELECT JR.PSEUDO FROM JOUEUR JR WHERE JR.ID_JOUEUR = '.$res['PASSIF'].' // on récupère : mysql_query, mysql_fetch_assoc dans $res2... // et enfin, on affiche chaque $res et $res2. }
|
|
Cette discussion est classée dans : table, id, joueur, clés, historique
Répondre à ce message
Sujets en rapport avec ce message
problème de mise à jour de base de données [ par rildspael ]
Ben en fait maintenant j'ai refait ce code, je me suis concentré, j'ai tout analysé mais rien ne marche encore et je ne comprends pas : le voici :Donc
Sélectionner les lignes différentes entre deux tables [ par Mikemadest ]
Bonjour,J'ai cherché sans trouver de réponse à mon problème,ce qui m'amène à vous poser cette question !D'avance je m'excuse si j'ai raté la solution
Afficher une ligne d'une table mysql [ par Alferox ]
Bonjours,bon bin une question de base toute con.Je voudrais afficher uniquement la ligne qui port l'id 2 d'une table. Il n'y a pas plus simple que de
selectionner une id dans une base de données [ par tomatokatchup ]
Voila mon probleme :J'ai créer une table qui se contient les réultats d'un formulaire remplis par les visiteurs de mon site. A chaque validation du fo
[MySQL] Sauvegarde d'un tableau dans une table [ par cedvoyage ]
Bonjour,J'aimerais sauvegarder un tableau (multimensionnel) dans ma base MySQL.Or quand j'essaye je n'ai que 'Array' de marquer dans le champ de ma ta
requete balaise [ par eax ]
salutg un pb avec une requete mysql qui affiche les champs d'une table A (table des photos) et d'une table B (table des comentaires), je veux afficher
MySQL DELETE [ par Mamax ]
Salut a tous!!!Est ce que quelqu'un pourrait m'indiquer la syntax de la clause WHERE pour pouvoir supprimer plusieurs éléments en même temps.J'ai essa
pb d'affichage de table [ par nikos283 ]
Bonjour, J'ai un probleme pour afficher une table, tout dabord voici les tables:annuaire(id_annuaire, nom_annuaire)centres(id_centres,nom_centres)serv
debutant probleme de session! [ par jimmy69 ]
bonjour a tous,voila je debute en php et je suis en train de realiser un espace menbresou ceux ci peuvent poster des news un truc tout simple!j'ai don
CREATE TABLE images ????? [ par spike911 ]
Je c'est ce surment un question newbie mais c'est pas grave je me lancer P"S je ne connais pas tres bien le PHPQuoi sa veu dire sa:CREATE TABLE images
Livres en rapport
|
Derniers Blogs
ROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGEROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGE par Matthieu MEZIL
Si vous utilisez Roslyn et que vous vous voulez vous simplifier le code du code rewriter, je vous conseille d'installer mon NuGet package RoslynHelper ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|