He estado tratando de entender un poco sobre cómo implementar la paginación personalizada en SQL, por ejemplo, leyendo artículos como este .
Tengo la siguiente consulta, que funciona perfectamente. Pero me gustaría implementar paginación con este.
SELECT TOP x PostId FROM ( SELECT PostId, MAX (Datemade) as LastDate
from dbForumEntry
group by PostId ) SubQueryAlias
order by LastDate desc
Que es lo que quiero
Tengo publicaciones en el foro, con entradas relacionadas. Quiero obtener las publicaciones con las últimas entradas agregadas, para poder seleccionar las publicaciones recientemente debatidas.
Ahora, quiero poder obtener las "10 principales a 20 publicaciones recientemente activas", en lugar de las "10 principales".
Que he probado
He intentado implementar las funciones ROW como las del artículo, pero realmente sin suerte.
¿Alguna idea de cómo implementarlo?
fuente
WHERE RowNumber >= @Start AND RowNumber < @End
obtener las primeras 1000 filas si@Start
es 0 y@End
es 1000?Para hacer esto en SQL Server, debe ordenar la consulta por una columna, para que pueda especificar las filas que desee.
Ejemplo:
Y no puede usar la palabra clave "TOP" al hacer esto.
Puede obtener más información aquí: https://technet.microsoft.com/pt-br/library/gg699618%28v=sql.110%29.aspx
fuente
use esto al final de su sintaxis de selección. =)
fuente
SQL 2008
La respuesta de Radim Köhler funciona, pero aquí hay una versión más corta:
Fuente: https://forums.asp.net/post/4033909.aspx
fuente
Puede usar la consulta anidada para paginación de la siguiente manera:
Paginación de 4 filas a 8 filas donde CustomerId es la clave principal .
fuente