Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

recuperar um intervalo específico de linhas em uma tabela do SQL Server


Você pode usar ROW_NUMBER em TSQL (2005 em diante) para fazer isso:
SELECT  ID, Foo, Bar
FROM     (SELECT  ROW_NUMBER() OVER (ORDER BY ID ASC) AS Row,
          ID, Foo, Bar
FROM    SomeTable) tmp
WHERE   Row >= 50 AND Row <= 100

Ou com LINQ-to-SQL etc:
var qry = ctx.Table.Skip(50).Take(50); // or similar