Consulta

12/01/2004 - 21:18 por Juan de Dios Vega Landa | Informe spam
Hola, como puedo hacer para crear una consulta que me muestre todo pero
desde el registro 20

select * from tabla ( esto muestra todos los registros)

quisiera saber como ahcer uan consulta que muestre todo pero desde el
registro 20

Preguntas similare

Leer las respuestas

#1 Javier Loria
12/01/2004 - 22:19 | Informe spam
Hola:
Aun cuando se parezcan, las tablas no son arreglos(arrays).
Si deseas hacer uso de este tipo de consulta probablemente puedes
aprender a utilizar cursores, los cursores te permite usar fila como si
fuera registro y pueden utilizarse secuencialmente como si fueran un
arreglo.
Otra alternativa es cambiar de forma de pensar y comenzar a utilizar
conjuntos de datos. Esto requerira mucho esfuerzo y no es un proceso
sencillo. Si lo que quieres es paginar hay varias alternativas, a mi me
gusta la siguiente:
/* Paginacion de Autores */
CREATE PROCEDURE Autores_Sel
@LastNombre varchar(40) = NULL OUTPUT
AS
SET NOCOUNT ON

SELECT TOP 5 WITH TIES *
FROM AUTHORS
WHERE CASE WHEN @LastNombre IS NULL THEN 1
WHEN @LastNombre<au_fname THEN 1
ELSE 0
END=1
ORDER BY AU_FNAME
SELECT @LastNombre=MAX(AU_FNAME)
FROM ( SELECT TOP 5 au_fname
FROM AUTHORS
WHERE CASE WHEN @LastNombre IS NULL THEN 1
WHEN @LastNombre<au_fname THEN 1
ELSE 0
END=1
ORDER BY AU_FNAME) AS N
GO
/* Fin de Declaracion de Procedimiento */

/* Uso de Procedimiento */
DECLARE @UltimoApellido varchar(40)

EXEC Autores_Sel @UltimoApellido OUTPUT
EXEC Autores_Sel @UltimoApellido OUTPUT
EXEC Autores_Sel @UltimoApellido OUTPUT
EXEC Autores_Sel @UltimoApellido OUTPUT
EXEC Autores_Sel @UltimoApellido OUTPUT
/* Fin de Procedimiento */

Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.

Juan de Dios Vega Landa escribio:
Hola, como puedo hacer para crear una consulta que me muestre todo
pero desde el registro 20

select * from tabla ( esto muestra todos los registros)

quisiera saber como ahcer uan consulta que muestre todo pero desde el
registro 20
Respuesta Responder a este mensaje
#2 Manuel \(Salamanca\)
13/01/2004 - 13:01 | Informe spam
Hola,
para hacer lo que quieres simpre tienes que tener un criterio de ordenación
y una clave primaria.

Por ejemplo, la fecha como campo de ordenacion y IdTabla1 como clave
primaria, entonces tendríamos:

SELECT *
FROM Tabla1
WHERE IdTabla1 NOT IN (SELECT Top 20 FROM Tabla1 ORDER BY Fecha)
ORDER BY Fecha

Esto te devolvería todos los registros de tu Tabla1 excepto los 20 primeros.

Espero haberte ayudado.

Un saludo.

"Juan de Dios Vega Landa" escribió en el mensaje
news:
Hola, como puedo hacer para crear una consulta que me muestre todo pero
desde el registro 20

select * from tabla ( esto muestra todos los registros)

quisiera saber como ahcer uan consulta que muestre todo pero desde el
registro 20


Respuesta Responder a este mensaje
#3 Manuel \(Salamanca\)
13/01/2004 - 13:07 | Informe spam
faltaba un 'pequeño' detalle en la subconsulta. perdón...

SELECT *
FROM Tabla1
WHERE IdTabla1 NOT IN (SELECT Top 20 IdTabla1 FROM Tabla1 ORDER BY Fecha)
ORDER BY Fecha



"Juan de Dios Vega Landa" escribió en el mensaje
news:
Hola, como puedo hacer para crear una consulta que me muestre todo pero
desde el registro 20

select * from tabla ( esto muestra todos los registros)

quisiera saber como ahcer uan consulta que muestre todo pero desde el
registro 20


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida