Page 1 sur 1

Jointures

Posté : 04 oct. 2012, 19:16
par FranckW
Bonsoir,
Je souhaite afficher une seule fois le contenu de la base "employes" à partir de la base "missions" SI celle-ci comporte au moins un enregistrement.
La base "missions" est susceptible de contenir plusieurs fois l'ID employés.

Base "employes" :
ID (Unique)
NOM
PRENOM
etc...

Base "missions"
ID(=ID "employes" au moment de la création, inexistant, un seul enregistrement, plusieurs en registrements) l'ID "employes" pouvant donc être présent de 0 à illimité.
SITE
etc...
Exemple qui ne fonctionne pas
$req = "SELECT * FROM employes,missions GROUP BY missions.id=employes.id ";
Je souhaite donc afficher la liste des "employes" une seule fois (ID.employes en relation avec ID.mission) de la base "missions" si existant et qui peu être est multiple.
Actuellement malgré tous mes essais INNER JOIN j'affiche autant de fois "employes" qu'ils ne sont présents dans "missions".
Merci d'avance à vous pour votre aide.
Je travail depuis deux jours sur les jointures sans succès.

Re: Jointures

Posté : 04 oct. 2012, 19:27
par jojolapine
Bonsoir,

As-tu regardé du coté de DISTINCT, ou de la clause GROUP BY ?

Re: Jointures

Posté : 04 oct. 2012, 20:07
par FranckW
Bonsoir et merci,

Oui j'essaie GROUP BY, DISTINCT et aussi INNER JOIN sans arriver à mes fins.

Je continue, merci encore.

Re: Jointures

Posté : 05 oct. 2012, 21:44
par piotrowski-s
<?php $req = "SELECT * FROM  employes INNER JOIN  missions ON missions.id=employes.id GROUP BY employes.id "; ?>