方法一:

复制代码 代码如下:
SELECT TOP 页大小 *
FROM table1
WHERE id NOT IN
(
SELECT TOP 页大小*(页数-1) id FROM table1 ORDER BY id
)
ORDER BY id

方法二:

复制代码 代码如下:
SELECT TOP 页大小 *
FROM table1
WHERE id >
(
SELECT ISNULL(MAX(id),0)
FROM
(
SELECT TOP 页大小*(页数-1) id FROM table1 ORDER BY id
) A
)
ORDER BY id

方法二倒序:

复制代码 代码如下:
SELECT TOP 页大小 *
FROM table1
WHERE ID <=
(
SELECT ISNULL(MIN(ID),(SELECT MAX(ID) FROM table1 ))
FROM
(
SELECT TOP (页大小*(页数-1)) ID FROM tbl_files ORDER BY ID DESC
) A
)
ORDER BY ID DESC

方法三

复制代码 代码如下:
SELECT TOP 页大小 *
FROM
(
SELECT ROW_NUMBER() OVER (ORDER BY id) AS RowNumber,* FROM table1
) A
WHERE RowNumber > 页大小*(页数-1)

分页方案二:(利用ID大于多少和SELECT TOP分页)效率最高,需要拼接SQL语句
分页方案一:(利用Not In和SELECT TOP分页) 效率次之,需要拼接SQL语句
分页方案三:(利用SQL的游标存储过程分页) 效率最差,但是最为通用

PS:这三条方案是在网上搜到的,做分页的时候选用的方案二,发现直接套用语句不能满足要求,因为根据发帖顺序,是需要倒序排列的,就是最新发帖需要排到最前面,于是仿照方案二改成了倒序,希望对大家有所帮助。

更多相关文章

  1. 【安卓笔记】android客户端与服务端交互的三种方式
  2. android分页查询获取系统联系人信息
  3. Android三种实现定时器的方法
  4. android 沉浸式状态栏的三种方法
  5. [Android]应用语言切换的三种方法
  6. Android三种XML解析
  7. android 退出程序三种方法及两种形式
  8. Android入门教程(三十一)------SQLite分页读取
  9. android ListView的分段显示、分页显示(附源码)

随机推荐

  1. 如果让我重新设计一款Android App
  2. Android Studio中使用com.android.suppor
  3. Android应用程序启动Binder线程源码分析
  4. Android WebView 用法
  5. 【Android开机启动Activity或者Service方
  6. 定制自己的 Android(安卓)Dialog 信息提
  7. Android常用开源库(模块部分)
  8. 10.Android之测试代码实现步骤
  9. Android客户端通过socket与服务器通信
  10. 离线下载android sdk