SELECT TOP

09/07/2004 - 13:07 por David R. | Informe spam
Hola a todos,

Estoy con un procedimiento de busqueda y quiero que me
devuelva un rango de los resultados.
Si la SELECT de busqueda encuentra 100 registros, quiero
que me muestre del 20 al 50.

Con SELECT TOP 50 me muestra los 50 primeros, pero ¿como
hacer para sacar solo del 20 al 50?

La idea es hacer una paginacion, pasando al procedimiento
la primera posicion y la ultima.

Trabajo con SQL 2000 Enterprice y W2003


Muchas gracias!!
 

Leer las respuestas

#1 Carlos Sacristan
09/07/2004 - 13:29 | Informe spam
Suponiendo que el número de registros por página es de 50, para pasar a
la siguiente página:

SELECT TOP 50 campo1, campo2... FROM tabla WHERE campoClave >
@valorAPartirDe ORDER BY campoClave

Para pasar a la anterior página:

SELECT TOP 50 campo1, campo2... FROM tabla WHERE campoClave <
@valorAPartirDe ORDER BY campoClave


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL


"David R." escribió en el mensaje
news:29ca301c465a4$eeb5f2c0$
Hola a todos,

Estoy con un procedimiento de busqueda y quiero que me
devuelva un rango de los resultados.
Si la SELECT de busqueda encuentra 100 registros, quiero
que me muestre del 20 al 50.

Con SELECT TOP 50 me muestra los 50 primeros, pero ¿como
hacer para sacar solo del 20 al 50?

La idea es hacer una paginacion, pasando al procedimiento
la primera posicion y la ultima.

Trabajo con SQL 2000 Enterprice y W2003


Muchas gracias!!

Preguntas similares