且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

关于在SQL Server中选择指定的记录范围

更新时间:2023-02-03 07:45:40

尝试:
WITH myTableWithRows AS (SELECT (ROW_NUMBER() OVER (ORDER BY myTable.SomeField)) as row,* FROM myTable)
SELECT * FROM myTableWithRows WHERE row BETWEEN 10 AND 100



或:



Or:

SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY OrderID) AS row FROM myTable ) AS myTableWithRows 
WHERE myTableWithRows.row BETWEEN 10 AND 100


请参阅:
排名函数(Transact-SQL) [ ROW_NUMBER [
See this:
Ranking Functions (Transact-SQL)[^].
The one you want is ROW_NUMBER[^].

Hope this helps,

Pablo.


select * from (select *,row_number()over(order by cityid ) rowid from CityTable)T where rowid between 10 and 100