pb requête MySQL Help !!!

pb requête MySQL Help !!! - PHP - Programmation

Marsh Posté le 29-01-2003 à 09:58:12    

j'ai 2 tables :
- une "groupe" dont le champ clé primaire est "id_groupe" et dont un autre champ est "id_membres" :
elle contient 3 enregistrements : 25, 49, 53 ayant tous id_groupe = 2
- une "formation" dont le champ clé primaire est "user_id" :
elle contient 2 enregistrements : 25, 49
Je veux récupérer l'id_membres ayant id_groupe=2 et ne figurant pas dans formation.
Ma requête :
select distinct groupe.id_membres from groupe, formation where groupe.id_groupe=2 and groupe.id_membres<>formation.user_id
Résultat obtenu : 25, 49, 53 (au lieu de 53, résultat souhaité)
J'ai l'impression qu'il compare les éléments ligne par ligne et non pas globalement sur les tables.
Y a-t-il une possibilité de modifier cette requête pour que ça marche sur une seule requête ou faut-il traiter le problème sur plusieurs ? (je n'ai pas MySQL 4.1 qui semble autoriser les sous-requêtes)
Merci

Reply

Marsh Posté le 29-01-2003 à 09:58:12   

Reply

Marsh Posté le 29-01-2003 à 19:47:11    

select * from formation =>  chaine de caractere  $NOTIN=25,49
 
$query = "select distinct groupe.id_membres from groupe where groupe.id_groupe=2 and groupe.id_membres not in ($NOTIN)";

Reply

Marsh Posté le 29-01-2003 à 20:11:34    

Pas garantie, mais ca vaut le coup d'essayer :
SELECT groupe.id_membres
FROM groupe
LEFT JOIN formation ON groupe.id_membres = formation.id_membres
WHERE id_groupe = 2
AND formation.id_membres IS NULL

Reply

Marsh Posté le 30-01-2003 à 08:35:10    

Merci je vais essayer tout de suite.

Reply

Marsh Posté le 30-01-2003 à 09:45:42    

Bon bein ça à l'air de marcher Nickel !
Encore merci

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed