Bonjour,

je fais appelle à vous car je suis galère depuis 1h sur une requête qui je pense est simple mais bizarrement je bloque dessus.

J'ai trois tables comme suis (simplifiée):
sujets
id
nom

messages
id_sujet
date
id_membre
texte

membres
id
pseudo

Ce que je cherche à faire est la chose suivante :
Lister les différents sujets du forum, indiquer le nombre de message pour chaque sujet et indiquer le dernier membre qui a écrit dans ce sujet.

Pour ce qui est du nom du sujet et du nombre de message pas de soucis
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
SELECT s.nom, s.id, COUNT(m.id) as nbMessage
FROM sujets s
LEFT JOIN messages m ON m.id_sujet=s.id
GROUP BY s.id
ORDER BY s.nom ASC
N'arrivant pas à sortir également le dernier membre inscrits j'ai fais une deuxième requête (je suis dans une boucle PHP)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
SELECT m.pseudo
FROM messages mess
LEFT JOIN membres m ON m.id=mess.id_membre
WHERE mess.id=(SELECT MAX(id) FROM messages WHERE sujet='".$id."')
Le tout fonctionne
mais comme j'ai plusieurs dizaines de sujets ça me fait pas mal de requête
J'aimerais donc tout mixer en 1 requête mais seulement je tourne en rond

Merci de votre aide