Bonjour,

Une fois de plus je sollicite vos connaissances pour du SQL. Je suis sur une requete (Voir code ci dessous) dont j'aimerai pouvoir encore filtrer le résultat pour n'avoir que les enregistrements dont le champ orddat_0 est le plus petit.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
SELECT orddat_0,extrcpdat_0,itmref_0
FROM porderq
WHERE pohfcy_0='XX'
and (itmref_0='31486' or itmref_0='54453' or itmref_0='50072')
AND lincleflg_0 = 1 
AND (itmref_0,extrcpdat_0) in 
(SELECT distinct a.itmref_0,MIN(a.extrcpdat_0)
FROM porderq a 
WHERE a.pohfcy_0= 'XX' 
AND a.lincleflg_0=1
GROUP BY a.itmref_0);
Ce code me donne le résultat suivant :


N° orddat_0 extrcpdat_0 itmref_0
1 19/10/09 28/10/09 31486
2 08/10/09 26/10/09 50072
3 07/09/09 26/10/09 54453
4 24/09/09 26/10/09 54453
5 12/10/09 26/10/09 54453

au résultat je ne voudrais plus avoir les lignes 4 et 5 (car elles ont un orddat_0 supérieur à celui de la ligne 3)

Merci d'avance pour vos réponses