虚拟主机域名注册-常见问题数据库问题 → 数据库问题


[原创]sqlserver2005中的分页实例
作者:

sqlserver中没有像mysql中的limit,所以要发页是很不爽的,

但是又要用,那同有办法了,只有研究,网上有不和的例子,都说top方式的效率相对来说是最高的。

那就上代码:

SELECT TOP 3 * FROM photo 
    WHERE picid NOT IN(SELECT TOP 6 picid FROM photo)

第一层的top3是每页显示3 记录。

第二层里的top 6是表示显示第3页的数据。

为什么是6呢,

下面是我总结出的公式:

maxnum=每页数*(当前页数-1)


比如第一页:maxnum=3*(1-1)的sql语句:

SELECT TOP 3 * FROM photo 
    WHERE picid NOT IN(SELECT TOP 0 picid FROM photo)

第二页:maxnum=3*(2-1)的sql语句:

SELECT TOP 3 * FROM photo 
    WHERE picid NOT IN(SELECT TOP 3 picid FROM photo)




来源:
阅读:1316
日期:2014-03-26

【 双击滚屏 】 【 推荐朋友 】 【 收藏 】 【 打印 】 【 关闭 】 【 字体: 】 
上一篇:用python删除nginx的缓存文件
下一篇:[原创]php点击下载任意一个url页面
  >> 相关文章