sql et group by

JoyeuxBranleur

Membre émérite
19 Juillet 2001
667
4
39
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
 

molgow

Vétéran
Club MacG
4 Janvier 2002
5 493
612
37
Suisse
www.monts-chevreuils.ch
et peut-être en rajoutant un :

ORDER BY date DESC

?!
 

JoyeuxBranleur

Membre émérite
19 Juillet 2001
667
4
39
Saint-Etienne
www.meetyou.fr.st
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
 

olof

Membre émérite
23 Avril 2002
770
103
47
Neuchâtel
www.olofweb.com
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+