SQL Postgres 查询的服务器等效项

SQL Server equivalent of Postgres query

select column 
from table 
order by row_number() over () 
limit 1000 offset 200;

我在 PostgreSQL 中有上述查询。我想要 SQL 服务器等同于上面的内容。我尝试了下面的一个:

select top 1000 offset 200 column 
from table 
order by row_number() over (ORDER BY column ASC) 
limit 1000 offset 200;

但它抛出以下错误。

Incorrect syntax near '17000000'.

SELECT column 
  FROM table 
  ORDER BY Row_Number() Over (Order By column)
  OFFSET 200 ROWS
  FETCH NEXT 1000 ROWS ONLY;

https://technet.microsoft.com/en-us/library/gg699618(v=sql.110).aspx

请注意,您确实应该使用保证每次给出相同订单的 ORDER BY 子句。

有些数据库不会 return 任何 INFORMATION_SCHEMA.COLUMNS 偏移量为 200 的东西,但我把它放在这里是为了工作代码。

SELECT t.TABLE_NAME, t.COLUMN_NAME 
    , ROW_NUMBER() over (order by t.COLUMN_NAME asc) as RowNumber
FROM INFORMATION_SCHEMA.COLUMNS as t
ORDER BY ROW_NUMBER() over (order by t.COLUMN_NAME asc)
OFFSET 200 ROWS
FETCH NEXT 1000 ROWS ONLY