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

Comando LIMIT en MsSQL

Estas en el tema de Comando LIMIT en MsSQL en el foro de Bases de Datos General en Foros del Web. Gente, tengo este problema. Normalmente suelo trabajar con el motor de base de datos MySQL. Pero por una ocasión particular me veo en la obligación ...
  #1 (permalink)  
Antiguo 24/08/2009, 16:43
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Pregunta Comando LIMIT en MsSQL

Gente, tengo este problema.

Normalmente suelo trabajar con el motor de base de datos MySQL. Pero por una ocasión particular me veo en la obligación de trabajar con MsSQL y hay una sentencia que no encuentro como reemplazar.

En MySQL uso:

Código:
SELECT usuarios_nombre FROM usuarios LIMIT 5,10
En donde solicito listar los registros del campo usuarios_nombre comenzando desde el 5to registro y sólamente quiero 10 resultados.

Pero en MsSQL el mismo comando me da error. Googleando encontré que puedo usar:

Código:
SELECT usuarios_nombre FROM usuarios TOP 5
Pero de este modo sólo le estoy indicando que me liste los 5 primeros. Lo cual no sirve para lo que estoy intentando hacer.

Alguien sabe como suplir esto?? Nunca me imaginé que un comando tan básico no pudiera utilizarse en MsSQL.

Podrán ayudarme?
Desde ya muchas gracias.

Saludos a todos.
  #2 (permalink)  
Antiguo 24/08/2009, 19:42
 
Fecha de Ingreso: agosto-2009
Mensajes: 19
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Comando LIMIT en MsSQL

SELECT TOP 5 usuarios_nombre FROM usuarios
  #3 (permalink)  
Antiguo 24/08/2009, 20:34
Avatar de SPAWN3000  
Fecha de Ingreso: marzo-2008
Ubicación: Bogota
Mensajes: 858
Antigüedad: 16 años, 1 mes
Puntos: 15
Respuesta: Comando LIMIT en MsSQL

Ya que no describes el error, te puedo asegurar que esto debe funcionar
SELECT * FROM table LIMIT 5,5;

Esto retorna el registro 6 al 10... --Limit desde, mas x posiciones.
  #4 (permalink)  
Antiguo 24/08/2009, 20:43
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Comando LIMIT en MsSQL

trata de buscar en google ejemplos como estos
http://www.select-sql.com/mssql/how-...ssql-2005.html
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #5 (permalink)  
Antiguo 25/08/2009, 04:23
Avatar de Valery-Net  
Fecha de Ingreso: agosto-2008
Mensajes: 694
Antigüedad: 15 años, 8 meses
Puntos: 12
Respuesta: Comando LIMIT en MsSQL

Puedes hacerlo así:

Cita:
SELECT * FROM ( SELECT *, ROW_NUMBER() OVER (ORDER BY id) as nRegistros FROM nombre_tabla ) AS TablaResultado WHERE nRegistros BETWEEN 10 AND 20
  #6 (permalink)  
Antiguo 25/08/2009, 07:14
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Comando LIMIT en MsSQL

Cita:
Iniciado por ingenius Ver Mensaje
SELECT TOP 5 usuarios_nombre FROM usuarios
Justamente eso es lo que NO necesito. Jajaja. Leé la consulta, por favor.
Saludos y gracias de todos modos.
  #7 (permalink)  
Antiguo 25/08/2009, 07:24
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Comando LIMIT en MsSQL

Cita:
Iniciado por huesos52 Ver Mensaje
trata de buscar en google ejemplos como estos
http://www.select-sql.com/mssql/how-...ssql-2005.html
Gracias, Huesos, pero no hay algo más sencillo? Hay que reemplazar tres datos de una sentencia por todo eso???

Saludos.
  #8 (permalink)  
Antiguo 25/08/2009, 07:26
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Comando LIMIT en MsSQL

Cita:
Iniciado por SPAWN3000 Ver Mensaje
Ya que no describes el error, te puedo asegurar que esto debe funcionar
SELECT * FROM table LIMIT 5,5;

Esto retorna el registro 6 al 10... --Limit desde, mas x posiciones.
Spawn, no puse el error porque pensé que estaba implícito que en MsSQL, el argumento LIMIT no existe.

Esa consulta que vos escribís se puede utilizar en MySQL pero no en MsSQL.

No me sirve, pero gracias de todos modos.
  #9 (permalink)  
Antiguo 25/08/2009, 10:42
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Comando LIMIT en MsSQL

Ya probaste lo que dice valery-net?
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
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 04:47.