-- 测试数据量:2161852 条
declare @i datetime

set @i = GETDATE();
--SQL 2005 -2008
-- 开始
WITH temp AS (SELECT id,title,body, ROW_NUMBER() OVER (ORDER BY id) AS 'RowNumber' FROM Article)
SELECT * FROM temp
WHERE RowNumber BETWEEN 5000 AND 5010

-- 结束
print '耗时'+cast(datediff(ms,@i,getdate()) as varchar(10));  -- (11 行受影响)耗时3606


set @i = GETDATE();
--SQL 2000
-- 开始
select top 11 * from Article where id not in (select top 4999 id from Article order by id) order by id
-- 结束
print '耗时'+cast(datediff(ms,@i,getdate()) as varchar(10));  -- (11 行受影响) 耗时22156

官方说明:http://msdn.microsoft.com/en-us/library/ms186734.aspx

相关文章:

  • 2022-01-15
  • 2021-05-31
  • 2022-12-23
  • 2021-10-08
猜你喜欢
  • 2021-07-07
  • 2021-10-25
  • 2022-12-23
  • 2021-08-07
相关资源
相似解决方案