Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.
TOP 10 en oracle
Enviado por rikardoperu el día 10 de noviembre de 2005
Hola,
Me puende decir si exita la funcion TOP en PL/SQL de oracle, ya que necesito sacar el top 10, el top 5 de mi tabla de ventas, y no se como empezar espero me puedan ayudar gracias
atte
Ricardo Salazar
La verdad es que no sé lo que hace TOP, me imagino que te sacará los valores más altos de la columna, si es así se me ocurre que podría apoyarte con ROWNUM:
SELECT ROWNUM, COLUMNA FROM TABLA WHERE ROWNUM < 10 ORDER BY COLUMNA DESC;
Enviado por andrewsreid el día 10 de noviembre de 2005
Querido Ricardo,
Hay dos maneras para responder a tu pregunta:
(1) La respuesta fácil que llamo <<The easy way>> (porque soy inglés)
SQL> DOC
DOC>The easy way to select the bottom/top N rows:
DOC>#
SQL> SELECT table_name FROM
2 (SELECT table_name FROM dba_tables ORDER BY 1)
3 WHERE rownum <= 10;
(2) La respuesta difícil que llamo <<The hard way>>
SQL> DOC
DOC>The hard way to select the bottom/top N rows:
DOC>#
SQL> SELECT table_name FROM
2 dba_tables x WHERE
3 (SELECT COUNT(*) FROM dba_tables WHERE table_name <= x.table_name) <= 10
4 ORDER BY 1;