开发者

Efficient paging with large tables in sql 2008

开发者 https://www.devze.com 2022-12-22 18:29 出处:网络
for tables with开发者_开发百科> 1,000,000 rows and possibly many many more ! haven\'t done any benchmarking myself so wanted to get the experts opinion.

for tables with开发者_开发百科 > 1,000,000 rows and possibly many many more !

haven't done any benchmarking myself so wanted to get the experts opinion.

Looked at some articles on row_number() but it seems to have performance implications

What are the other choices/alternatives ?


We use row_number() to great effect and there hasn't really been any performance issues with it. The basic structure of our paginated queries looks like this:

WITH result_set AS (
  SELECT
    ROW_NUMBER() OVER (ORDER BY <ordering>) AS [row_number],
    x, y, z
  FROM
    table
  WHERE
    <search-clauses>
) SELECT
  *
FROM
  result_set
WHERE
  [row_number] BETWEEN a AND b

It works fine for us on tables with > 1,000,000 rows.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号