Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Paginacion en oracle

Estas en el tema de Paginacion en oracle en el foro de Bases de Datos General en Foros del Web. Hola a todos!!! Tengo una consulta que me genera demasiados registros, por lo cual necesito paginar los resultados, pero la verdad no tengo idea. La ...
  #1 (permalink)  
Antiguo 11/11/2010, 13:59
Avatar de gabrican  
Fecha de Ingreso: junio-2008
Ubicación: Medellin
Mensajes: 89
Antigüedad: 15 años, 10 meses
Puntos: 4
Paginacion en oracle

Hola a todos!!!

Tengo una consulta que me genera demasiados registros, por lo cual necesito paginar los resultados, pero la verdad no tengo idea.

La base de datos es ORACLE
Pensaria en paginar de a 20 registros.
He encontrado miles de ejemplos pero no me funcionan muy bien...
Para el ejemplo:

Tabla: PROYECTO
Filas: ID, NOMBRE

y he encontrado algo asi:
Código:
SELECT *  
FROM ( SELECT PROYECTO.*, ROWNUM row_number  
FROM (  
SELECT ID, NOMBRE
FROM PROYECTO
) 
WHERE ROWNUM < ((1*20) + 1 )  
)  
WHERE row_number >= (((1-1) * 20) + 1);
Pero no me funciona...

Ojala alguien me pueda ayudar
__________________
Gabo Duk3
I.S
  #2 (permalink)  
Antiguo 11/11/2010, 15:03
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 4 meses
Puntos: 447
Respuesta: Paginacion en oracle

Buenas tardes gabrican

Prueba con esto:

Código SQL:
Ver original
  1. SELECT * FROM (
  2. SELECT  ROWNUM  AS registro, id, nombre  FROM proyecto
  3. )
  4. WHERE registro BETWEEN (NoPagina - 1) * 20 + 1
  5. AND  NoPagina * 20

donde NoPagina sería la página que quieres consultar en ese momento.

Saludos y espero que te sirva el código
Leo
  #3 (permalink)  
Antiguo 02/12/2010, 18:27
 
Fecha de Ingreso: diciembre-2010
Ubicación: Bogotá, Colombia
Mensajes: 2
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Paginacion en oracle

Buenas noches,

SELECT * FROM (
SELECT a.*, rownum r__ FROM (
select ID, NOMBRE from PROYECTO)
a WHERE rownum < ((NoPagina-1) * 20) + 1)
WHERE r__ >= (NoPagina * 20) + 1

NoPagina es el número de pagina actual.

Espero que te sirva.

Última edición por Daniel_forero; 02/12/2010 a las 18:42
  #4 (permalink)  
Antiguo 27/04/2011, 09:48
Avatar de gabrican  
Fecha de Ingreso: junio-2008
Ubicación: Medellin
Mensajes: 89
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Paginacion en oracle

Voy a testear y les comento... gracias de antemano!!!
__________________
Gabo Duk3
I.S

Etiquetas: oracle, paginacion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:05.