2010-06-26 63 views
0

是否可以对select n行进行变化以选择从0开始的最后n行。 我的(移动)应用程序资源有限,无法使用服务器端缓存。返回的最大行数是100.我通过选择前100获得前100个。然后,我希望用户能够请求行101-200等。数据库数据是静态的,重新查询时间可以忽略不计。 平台SQL Server 2008Select top上的变化n

回答

2
;With CTETable AS 
(
    SELECT ROW_NUMBER() OVER (ORDER BY Column_Name DESC) AS ROW_NUM, * FROM TABLENAME WHERE <CONDITION> 
) 

SELECT Column_List FROM CTETable WHERE ROWN_NUM BETWEEN <StartNum> AND <EndNum> 

使用你的[startNum]和[EndNum]是你想要的任何系列,也许123 - 147!这将工作得很好!