如何在 mssql 中 select 限制数据

How to select limted data in mssql

我的 table 中有大量数据,所以我想分段获取。所以我想 运行

select top 1000 from table_name

它给了我前 1000 个数据,但如果我想要下一个 1000 个数据,查询将是什么。它只是返回前 1000 个数据。

此处回答:

SELECT  *
FROM    (
        SELECT  *,
                ROW_NUMBER() OVER (ORDER BY mycolumn) rn
        FROM    mytable
        ) q
WHERE   rn BETWEEN 1001 AND 2000
ORDER BY
        mycolumn

您可以使用 ROW_NUMBER()

或者你可以简单地使用这个。

select top(1000) * from Table_Name where Column_Name NOT IN (select top (1000) Column_Name  from Table_Name)