且构网

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

在sql server中选择表的第n行

更新时间:2023-02-07 13:49:10

尝试:

Try:
WITH myTableWithRows AS (
    SELECT (ROW_NUMBER() OVER (ORDER BY myTable.SomeField)) as row,*
    FROM myTable)
SELECT * FROM myTableWithRows WHERE row = 3


你可以使用row_number函数。请参阅以下MSDN链接 ROW_NUMBER(Transact-SQL) [ ^ ]。
you can use row_number function. Refer to following MSDN link ROW_NUMBER (Transact-SQL)[^].


例如,选择第5行



SELECT TOP 1 T. * FROM

(SELECT TOP 5 * FROM DBT_Person ORDER BY AGE ASC)AS T

ORDER BY T.AGE DESC;
for example, to select 5th row

SELECT TOP 1 T.* FROM
(SELECT TOP 5 * FROM DBT_Person ORDER BY AGE ASC) AS T
ORDER BY T.AGE DESC;