SQLServer2005新的高效分页方法

时间:2015/10/30 14:53:00来源:互联网 作者:flyso 点击: 990 次
Select * FROM (
    select ROW_NUMBER()Over(order by cf_id desc) as rowId,* from T_Test
) as mytable
where rowId between 21 and 40


每页20条,第2页

ROW_NUMBER是SqlServer2005中的新特性

以下是利用本方法和传统利用Set RowCount方法存储过程的效率比较结果:

未建索引情况下:
500w数据: 存储过程1分20秒 , 新方法1分18秒
400w数据:存储过程47秒,新方法41秒
300w数据:存储过程35秒,新方法30秒
200w数据:存储过程25秒,新方法20秒
100W数据:存储过程12秒,新方法10秒
50W数据:存储过程 7秒,新方法 0秒          


Copyright © 2005 - 2016 flyso.cn. 飞搜 版权所有 鄂ICP备11002783号-3