Bonjour,

j'ai un bout de requête qui cumule par facture les quantités et le poids et qui fonctionne :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
SELECT (DL.AR_REF || ' / ' || SUM( DL.DL_QTE) || ' / ' || SUM( DL.DL_POIDSNET) / 10 )
FROM F_DOCLIGNE DL
GROUP BY DL.AR_REF, DL.DO_PIECE
HAVING DL.DO_PIECE = 'FC080920'
AND DL.AR_REF NOT LIKE 'Z%'
)
me renvoie par exemple (si je n'ai que deux références sur la facture) :

A08 / 26 / 364
A06 / 2 / 200

Maintenant je n'ai besoin de récupérer que la 1ère ligne, ou la deuxième ligne, ou la 3ième ligne. Rownum fonctionne OK sur un SELECT classique, mais ici

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
 
select *
from (
    SELECT (DL.AR_REF || ' / ' || SUM( DL.DL_QTE) || ' / ' || SUM( DL.DL_POIDSNET) / 10 )
    FROM F_DOCLIGNE DL
    GROUP BY DL.AR_REF, DL.DO_PIECE
    HAVING DL.DO_PIECE = 'FC080920'
    AND DL.AR_REF NOT LIKE 'Z%'
)
WHERE rownum = 1
il n'y a que ROWNUM=1 qui fonctionne, qui me renvoie bien la 1ère ligne, 2 ne me renvoie rien du tout, mais si je demande :

WHERE rownum < 3 j'ai bien les deux !!

Si quelqu'un a une idée de la manière de faire ça ?