Bonjour
Une petite question sur l article de la FAQ concernant le filtrage de n tuples dans un intervalle d'une requete
dans la FAQ est mentionnée la requête suivante
que je vais modifier comme suis pour vous expliquer mon interrogation
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT * FROM (SELECT ROWNUM NUM, ename, job FROM EMP ORDER BY sal ) WHERE NUM BETWEEN 6 AND 10 ;
Si je comprends bien, l'objectif etait d'avoir le nom et le job des personnes avec salaires les plus petits entre le rang 6 et le rang 10
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT ROWNUM NUM1, SR.* FROM (SELECT ROWNUM NUM, ename, job FROM EMP ORDER BY sal ) SR WHERE NUM BETWEEN 6 AND 10 ;
Or le filtrage est effectué sur NUM dans la sous requete et a l'intérieur des parentheses l attribution du rownum se fait avant le tri (cf. Comment filtrer les n premières lignes d'une requête avec ROWNUM ? de la FAQ)
j'ai bien essayé
mais une erreur "invalid identifier" apparait
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT ROWNUM NUM1, SR.* FROM (SELECT ROWNUM NUM, ename, job FROM EMP ORDER BY sal ) SR WHERE NUM1 BETWEEN 6 AND 10 ;
pourriez vous eclairer ma lanterne ?
merci
Cdlt
_Agrid
Partager