Usted puede utilizar OVER
cláusula y una función de clasificación. No puede filtrar esto directamente, por lo que necesita una sub consulta o una expresión de tabla común, el ejemplo siguiente usa la última.
DECLARE @MyTable TABLE
(
ID INT,
Name VARCHAR(15)
)
INSERT INTO @MyTable VALUES (1, 'Alice')
INSERT INTO @MyTable VALUES (2, 'Bob')
INSERT INTO @MyTable VALUES (3, 'Chris')
INSERT INTO @MyTable VALUES (4, 'David')
INSERT INTO @MyTable VALUES (5, 'Edgar')
;WITH people AS
(
SELECT ID, Name, ROW_NUMBER() OVER (ORDER BY ID) RN
FROM @MyTable
)
SELECT ID, Name
FROM people
WHERE RN > 1
Habrá un mejor soporte para la paginación en la próxima versión de SQL Server (nombre en clave de Denali) con los OFFSET
y FETCH
palabras clave.
Genial ... no pensé en esta dirección. estaba tratando de seleccionar entre los 5 primeros, entonces estaba tratando de omitir el primero con la palabra "saltar" ... Muchas gracias ... :-) –
+1 por mencionar que es una función de clasificación, eso hace que sea más útil respuesta – Sascha
+1 para información 'OFFSET' y 'FETCH' .. – dotNETbeginner