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
Son contenu
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) );
Je souhaite faire une requete qui identifie le premier (D)
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 ;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
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
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
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
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
Si vous avez une solution "simple" je suis preneur
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
Merci de votre aide
Cordialement
@argoet
Partager