sqlserver高效率分页实现

    
说明:

(1)写分页程序的相关类的想法来源于好友(软件日志:qq呢称)。并由他提出了ms sqlserver下的分页sql的实现,个人感觉不错,故产生了完成相关通用类的念头

(2)ms sqlserver下的分页sql原理:通过正序与反序记录集之差获得所需页的记录集。
设有表:CREATE TABLE[pageDemo] (
        [id] [int] NOT NULL ,
        [name] [nvarchar] (50)  ,
        [createDate] [datetime]
    )
 当然id是主键啦。,设共有1000条记录,id的值从1到1000,每页记录数为100。
 则:select top 100 * from
      (select top 1000 * from pageDemo a order by a.id desc) b
      order by b.id asc
返回第1页记录。

 则:select top 100 * from
      (select top 800 * from pageDemo a order by a.id desc) b
      order by b.id asc
返回第3页记录。

(3)相关源文件已经上传到csdn.net上,分类为:源程序/其他,名称为分页程序,关键词为page,derrick_page

总结:目前这组通用类只提供了mysqlser 和mysql两种版本的代码,其余数据库版本代码有兴趣的朋友可以实现,
欢迎交流!我的qq是370922517,邮箱:
liudongbao@139.com        


致谢:
   在这里我要感谢好友软件日志,是他在我的软件生涯中提出了很多有意义的想法!是他在我烦恼的时候陪我聊天!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值