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

Recorrer Registros Con Top

Estas en el tema de Recorrer Registros Con Top en el foro de SQL Server en Foros del Web. Buenas Tardes Jovenes. Solicito ayuda; tengo entendido que en sqlserver con la funcion TOP podria sacar los primeros n registros de una tabla. ej: selec ...
  #1 (permalink)  
Antiguo 06/10/2011, 14:16
 
Fecha de Ingreso: julio-2008
Mensajes: 92
Antigüedad: 15 años, 8 meses
Puntos: 0
Recorrer Registros Con Top

Buenas Tardes Jovenes.

Solicito ayuda; tengo entendido que en sqlserver con la funcion TOP podria sacar los primeros n registros de una tabla. ej:

selec top 10 *from tabla; //genera los 10 primeros registros.

Ahora bien la pregunta es: ¿Cómo genero los 10 siguientes, y luego mostrarlos en pantalla, luego los otros 10 y asi sucesivamente hasta terminar de recorrer todos los registros?
  #2 (permalink)  
Antiguo 06/10/2011, 14:20
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 7 meses
Puntos: 774
Respuesta: Recorrer Registros Con Top

Lo que tu quieres es hacer una paginacion cierto??? aqui lo que podrias usar es por ejemplo la funcion row_number para que te regrese los primeros registros algo asi


select row_number over(order by campo) as rn, campo from tabla where rn<=10

y en la siguiente

select row_number over(order by campo) as rn, campo from tabla where rn>=10 and rn<=20

algo asi solo aplicalo a lo que necesitas :)

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 06/10/2011, 14:36
 
Fecha de Ingreso: julio-2008
Mensajes: 92
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Recorrer Registros Con Top

si eso es precisamente lo que necesito. muchas gracias, una ultima pregunta, y para decir que llegue a los ultimos. como seria.

muchas gracias
  #4 (permalink)  
Antiguo 06/10/2011, 14:48
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 7 meses
Puntos: 774
Respuesta: Recorrer Registros Con Top

pues podria ser con un

declare @maximo int
select @maximo=count(*) from tabla


select row_number over(order by campo) rn, campo from tabla where rn>1 and rn<@maximo


Saludos1
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 06/10/2011, 15:31
 
Fecha de Ingreso: julio-2008
Mensajes: 92
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Recorrer Registros Con Top

solo tengo un solo error, el sqlserver no me reconoce el alias rn.

sabes por que?

gracias
  #6 (permalink)  
Antiguo 06/10/2011, 15:36
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 7 meses
Puntos: 774
Respuesta: Recorrer Registros Con Top

select * from(
select row_number over(order by campo) as rn, campo from tabla) t1 where tq.rn<=10


Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: registros, server, sql, tabla, top
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 19:37.