嗨,大家好我正在使用自定義分頁,我得到的數據與此查詢。選擇第n個數字表現?
DECLARE @pageIndex INT = 0;
DECLARE @pageSize INT = 10;
WITH foo AS (
SELECT ROW_NUMBER() OVER (ORDER BY test ASC) as rownumber, test, col
FROM TestDB.dbo.test
)
SELECT test, col FROM foo
WHERE rownumber BETWEEN (@pageIndex * @pageSize) + 1 AND (@pageIndex * @pageSize) + @pageSize
它的工作原理應該如此,但我必須考慮性能如此,這裏是問題。
哪種方式更適合SQL Server性能?
在表中選擇整個數據然後在asp.net,php等中進行分頁,或者用上面描述的方法選擇數據。
我有點困惑,因爲我上面描述的方法是選擇整個數據,並給每行的行號,然後選擇行數在X和Y之間。