sql et group by

JoyeuxBranleur

Membre actif
19 Juillet 2001
667
4
44
Saint-Etienne
www.meetyou.fr.st
Bonjour,
Je suis en train de réaliser un petit forum, j'ai un pb avec ma requete sql, j'ai une table avec la liste de mes posts, j'aimerai les sortir en ne gardant qu'un seule fiche par sujet, j'ai donc fait un group by par rapport a mon numero de sujet, le pb est que ca me sort la a chaque fois la premiere fiche correspondant a mon groupe alors que je souhaiterain ressortir la derniere.
Ne sachant pas si je suis assez claire voici un petit exemple

fiche1: numero rubrique=1 date=12/10/03 sujet=test1
fiche2: numero rubrique=2 date=2/11/03 sujet=test2
fiche3: numero rubrique=1 date=12/12/03 sujet=test1

ma requete me sort:
fiche1: numero rubrique=1 date=12/10/03 sujet=test1
fiche2: numero rubrique=2 date=2/11/03 sujet=test2

alors que moi je voudrais
fiche2: numero rubrique=2 date=2/11/03 sujet=test2
fiche3: numero rubrique=1 date=12/12/03 sujet=test1

ma requete est a peu pres:
select * FROM `forum_post`
GROUP BY numrubrique
 
et peut-être en rajoutant un :

ORDER BY date DESC

?!
 
Non, rajouter un order by date desc, fai un tri apres le groupement donc ca me donne:

fiche2: numero rubrique=2 date=2/11/03 sujet=test2
fiche1: numero rubrique=1 date=12/10/03 sujet=test1
 
Peut-être comme ça (de tête, alors attention !) :

select *
from forum_post fp1
where fp1.date=
(
select max(fp2.date)
from forum_post fp2
where fp2.rubrique=fp1.rubrique
and fp2.sujet = fp1.sujet
)


A+