djCourtin
Messages postés14Date d'inscriptionmardi 17 juin 2003StatutMembreDernière intervention20 juillet 2007
-
20 juil. 2007 à 08:53
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 2007
-
20 juil. 2007 à 12:31
Rebonjour, je sais pas pourquoi mais mon message d'hier n'a pas été pris en compte et il ne restait que la signature ...
Je réitère donc mon message
Je veux faire une requete du genre :
Select max(date), id from T group by id, pour récupérer l'occurence la plus récente pour chaque id.
jusque là rien de plus simple.
Le pb est que je veux aussi récupérer d'autres champs comme le Libelle et Chemin, sinon ca a pas d'intéret .
Et SQL Server m'emmerde à ce sujet, car si je fais
Select max(date), id, libelle, chemin from T group by id, il plante et me dis qu'il faut que j mette "libelle" et "chemin" dans l'agrégat, soit : Select max(date) , id, chemin, libelle from T group by id, libelle, chemin mais si je fais le group by la dessus, j'ai plu aucun regroupement du coup car le libelle et le chemin changent pour un meme id ...
du coup je suis coincé, j'espere que vous avez compri mon pb
Si quelqu'un a une idée, elle est la bienvenue
Merci
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 20 juil. 2007 à 12:08
Salut,
c' est normal qu' il t' e***
Sinon pour avoir le libelle et le chemin en une seule ligne
essaies ceci:
Select max(T.date) AS MAXI, id, chemin, libelle from T group by id, libelle, chemin
where T.date=MAXI
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 20 juil. 2007 à 12:31
ça m' étonnerait que ça marche !
essaies plutôt ceci:
SELECT Last(T.date) AS DernierDedate, T.Id, Last(T.Libelle) AS DernierDeLibelle, Last(T.Chemin) AS DernierDeChemin FROM T GROUP BY T.Id;