Problème jointure

Répondre
doudi
le 31/01/2010 à 14:13
doudi
Bonjour,

J'aimerais faire une jointure entre deux tables (matchs et equipes) afin d'afficher une liste de matchs entre différentes équipes de football.

Dans ma table matchs j'ai deux champs "dom" et "ext" et dedans je mets l'id de l'équipe.

Dans la table equipes j'ai le champ idequipe.

J'aimerais afficher les noms des équipes par rapport à l'id.

Ma jointure :

<?php
$blocg = mysql_query("SELECT equipes.idequipe,equipes.nom AS nom,matchs.idmatch,matchs.date,matchs.competition,matchs.num,matchs.dom,matchs.ext,matchs.resultat FROM matchs,equipes WHERE equipes.idequipe = matchs.dom OR equipes.idequipe = matchs.ext ORDER BY matchs.idmatch");
?>


Quelqu'un pourrait vérifier ma jointure svp ?

Sinon comment afficher le nom des équipes par rapport à cette jointure ?
LA GLOBULE
le 31/01/2010 à 16:37
LA GLOBULE
J'aimerais afficher les noms des équipes par rapport à l'id.


Par rapport à quel id ? Celui du match ?
doudi
le 31/01/2010 à 17:12
doudi
non par rapport à l'id des équipes !

dom = id de l'équipe qui joue à domicile
ext = id de l'équipe qui se déplace

je ne sais pas comment je peux faire la relation entre les deux tables "matchs" et "equipes" ! dans equipes j'ai deux id d'équipe (dom et ext)
LA GLOBULE
le 02/02/2010 à 20:16
LA GLOBULE
Il te faut une double instance de la table équipe.

SELECT
e1.idequipe as id_e1,
e1.nom as nom_e1,
e2.idequipe as id_e2,
e2.nom as nom_e2,
m.idmatch,
m.date,
m.competition,
m.num,
m.resultat
FROM matchs as m
JOIN equipes as e1 ON e1.idequipe = matchs.dom
JOIN equipes as e2 ON e2.idequipe = matchs.ext
ORDER BY m.idmatch

Un truc de ce genre devrait passer.
doudi
le 03/02/2010 à 09:59
doudi
youpi ça marche merci beaucoup !

sinon dans les lignes avec JOIN j'ai mis "m" à la place de "matchs" car tu as changé le nom de la table par "m" smiley
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours