Sous Oracle 10g
Savez vous s'il est possible d'identifier le dernier enregistrement d'une requete SQL ? (Pour le premier pas de pb avec "rownum" mais pour le dernier ça me semble plus coton)

Je m'explique
J'ai la table suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
Create table TEST 
(
A number(1),
B number(1),
C number(1)
);
Son contenu
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
/* Populate */ 
 
Insert into test (A,B,C) 
Select 1,2,3 from dual Union 
Select 4,5,6 from dual Union 
Select 7,8,9 from dual Union 
Select 0,1,2 from dual Union 
Select 3,4,5 from dual Union 
Select 6,7,8 from dual Union
Select 9,0,1 from dual Union
Select 2,3,4 from dual Union
Select 5,6,7 from dual Union
Select 8,9,0 from dual ;
Je souhaite faire une requete qui identifie le premier (D) et le dernier enreg (F) d'une requete quelquonque sur la table TEST les autres enregistrements sont identifiés par "R"
Je ne connais evidemment pas le nombre d'enreg que me rammenera la requete

Exemple (trié sur la colone B)
voici le resultat attendu
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
IdA,B,C
=====
D 9 0 1
R 0 1 2
R 1 2 3
R 2 3 4
R 3 4 5
R 4 5 6
R 5 6 7
R 6 7 8
R 7 8 9
F 8 9 0
ou trié sur la colone A
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
IdA,B,C
D 0 1 2
R 1 2 3
R 2 3 4
R 3 4 5
R 4 5 6
R 5 6 7
R 6 7 8
R 7 8 9
R 8 9 0
F 9 0 1
PS : pour l'instant j'en suis ici (il me manque l'info du dernier enreg)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Select decode(rownum,1,'D','R') As Id, A.* from (Select * from test order by A) A
Si vous avez une solution "simple" je suis preneur
Merci de votre aide
Cordialement
@argoet