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

Problema con consulta de paginación, limit y offset

Estas en el tema de Problema con consulta de paginación, limit y offset en el foro de PostgreSQL en Foros del Web. Cordial Saludo Tengo un inconveniente al parecer ligado a la consulta SQL (ó algo por el estilo), más lo he analizado y le he dado ...
  #1 (permalink)  
Antiguo 04/02/2011, 17:06
 
Fecha de Ingreso: marzo-2009
Ubicación: Cali (Valle) - Colombia
Mensajes: 164
Antigüedad: 15 años, 9 meses
Puntos: 2
De acuerdo Problema con consulta de paginación, limit y offset

Cordial Saludo

Tengo un inconveniente al parecer ligado a la consulta SQL (ó algo por el estilo), más lo he analizado y le he dado vueltas, pero no le encuentro solución, ya que al paginar en un momento dado (y de hecho al ejecutar las dos consultas por el administrador de PostgreSQL pasa lo mismo, más no arroja error alguno), dos consultas diferentes me traen 4 registros iguales y solo hay variación en uno, cuando en teoría todos cinco deberían de ser completamente diferentes, a continuación pego las dos consultas (las cuales son completamente iguales, solo varían en el OFFSET), por si quizás alguien me puede ayudar con esto:

SELECT *
FROM "actividadesEconomicasClientes"
ORDER BY "actividadEconomicaCliente" LIMIT 5 OFFSET 5

SELECT *
FROM "actividadesEconomicasClientes"
ORDER BY "actividadEconomicaCliente" LIMIT 5 OFFSET 10

No sé si quizás PostgreSQL maneje algún tipo de restricción especial en el uso de las clausulas LIMIT y OFFSET, por lo cual si alguno de ustedes sabe de esto, le agradecería si me pudiera ayudar, ya que en teoría todo está bn, más no funciona bn.

Muchas gracias.

Última edición por GUILLHERMOSOFT; 05/02/2011 a las 07:04
  #2 (permalink)  
Antiguo 05/02/2011, 08:11
 
Fecha de Ingreso: marzo-2009
Ubicación: Cali (Valle) - Colombia
Mensajes: 164
Antigüedad: 15 años, 9 meses
Puntos: 2
Respuesta: Problema con consulta de paginación, limit y offset

Ya resolví el problema, aquí dejo la consulta final por si alguno de ustedes se les presenta un inconveniente similar

SELECT *
FROM "actividadesEconomicasClientes"
ORDER BY "actividadEconomicaCliente", "id" LIMIT 5 OFFSET 5

SELECT *
FROM "actividadesEconomicasClientes"
ORDER BY "actividadEconomicaCliente", "id" LIMIT 5 OFFSET 10

Únicamente agregue al order by, el id de la tabla.

Etiquetas: limit, offset
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 01:04.