本文主要以SqlServer为例子,比较常用数据库分页的效率
SqlServer2005常用的数据库分页有两种方式,
第一种是利用Top关键字,从数据库表中的第M条记录开始取N条记录。
第二是用select row_number()的形式。
一直很困惑哪个效率更高一点,总觉的第二种好点,今天测试一下,终于证明我的猜想是正确的
测试用的是我的Inventory数据库,有3万多行数据,cInvCode是主键
取数据库2000到2010行的数据
第一:select top
第二:select row_number()
让我吃惊是第一种用了1053毫秒,第二种才用23毫秒
看来还是微软自带的函数好一点啊
游兴趣的可以自己去测试一下