SQL Server中的范围行

SQL Server中的范围行,sql,sql-server-2008-r2,Sql,Sql Server 2008 R2,我想使用T-SQL创建分页。如何从第11行到第20行中选择10行 我知道我可以用C等来实现这一点,但我的问题是关于SQL Server的 这是表格: CREATE TABLE EarlyAccess( [EarlyAccessUserId] [int] IDENTITY(1,1) NOT NULL, [FirstName] [nvarchar](50) NOT NULL, [Lastname] [nvarchar](50) NOT NULL ) SQL中没有第n条记录,

我想使用T-SQL创建分页。如何从第11行到第20行中选择10行

我知道我可以用C等来实现这一点,但我的问题是关于SQL Server的

这是表格:

CREATE TABLE EarlyAccess(
    [EarlyAccessUserId] [int] IDENTITY(1,1) NOT NULL,
    [FirstName] [nvarchar](50) NOT NULL,
    [Lastname] [nvarchar](50) NOT NULL
)
SQL中没有第n条记录,除非明确指定顺序

SQL中没有第n条记录,除非明确指定顺序

SELECT  *
FROM    (
        SELECT  *, ROW_NUMBER() OVER (ORDER BY earlyAccessUserId) rn
        FROM    earlyAccess
        ) q
WHERE   rn BETWEEN 11 AND 20
ORDER BY
        earlyAccessUserId