Bonjour,
Je cherche désespérément la syntaxe d'une requête qui ne doit pas etre si difficile que cela mais qui me cause beaucoup de soucis.

Voici la table :
numero_contrat
date
type
famille
avenant
...

Voici le contenu possible :
numero de contrat date type famille avenant
00000501 01/01/2008 N 54 1
00000502 01/12/2008 Y 11 3
00000502 02/12/2008 Y 12 5
00000504 11/01/2008 N 14 8

Ce que je cherche à avoir apres ma requete est ceci :
numero de contrat date type famille avenant
00000501 01/01/2008 N 54 1
00000502 02/12/2008 Y 12 5
00000504 11/01/2008 N 14 8

Je cherche donc à avoir le numero d'avenant le plus haut pour chaque numero de contrat.

J'ai donc essayé la requete suivante avec succes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
SELECT numero de contrat, MAX(avenant)
FROM matable
GROUP BY numero de contrat
J'obtiens :
numero de contrat avenant
00000501 1
00000502 5
00000504 8

le soucis c'est que je voudrais tout le contenu de l'enregistrement et pas seulement les deux champs.

J'ai donc essayé ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
SELECT numero de contrat, date, type, famille, MAX(avenant)
FROM matable
GROUP BY numero de contrat, date, type, famille
mais à ce moment la, il me retourne tous les enregistrement ou presque, donc voila mon soucis, comment faire pour avoir tous les champs des enregsitrements ???

Merci