Access实现limit类似的功能的方法
2012-10-15 23:43
232 查看
Access实现limit类似的功能的方法这篇文章的内容如下:
Mysql数据库支持LIMIT语句,所以使得翻页易如反掌,比如我们可以这么写:
SELECT * FROM Doc WHERE docSort=‘Java’ LIMIT 0,30
表示从第1条开始取30条记录。但其他数据库都不支持这个语句,所以只能另辟蹊径了,下面就来介绍一下“掐头去尾”法。此方法主要是利用
了Access数据库的排序功能和TOP语句,我们都知道如果要显示前N条记录可以这样写:
SELECT TOP N * FROM Doc
这使用起来很方便。我们还可以扩展一下:
SELECT TOP N * FROM (SELECT TOP 2N * FROM Doc WHERE docSort=’Java’ ORDER BY id DESC) ORDER BY id ASC
到这里我想大家已经都明白了吧,子查询得到逆序排列的前2N条记录,然后把这2N条记录按正序排列得到前N条记录。OK了,这里的前
N条记录,实际上就是我们想要的第N到第2N条记录。下面是一个具体的例子:
注:其中的PageSize(分页的大小)和PageIndex(分页索引,初始假设为0)均为变量,请相应处理。
SELECT * FROM (
SELECT TOP [PageSize] * FROM (
SELECT TOP [PageSize * (PageIndex + 1)] * FROM Doc WHERE docSort=’Java’ ORDER BY id DESC
) ORDER BY id ASC
)ORDER BY id DESC
Mysql数据库支持LIMIT语句,所以使得翻页易如反掌,比如我们可以这么写:
SELECT * FROM Doc WHERE docSort=‘Java’ LIMIT 0,30
表示从第1条开始取30条记录。但其他数据库都不支持这个语句,所以只能另辟蹊径了,下面就来介绍一下“掐头去尾”法。此方法主要是利用
了Access数据库的排序功能和TOP语句,我们都知道如果要显示前N条记录可以这样写:
SELECT TOP N * FROM Doc
这使用起来很方便。我们还可以扩展一下:
SELECT TOP N * FROM (SELECT TOP 2N * FROM Doc WHERE docSort=’Java’ ORDER BY id DESC) ORDER BY id ASC
到这里我想大家已经都明白了吧,子查询得到逆序排列的前2N条记录,然后把这2N条记录按正序排列得到前N条记录。OK了,这里的前
N条记录,实际上就是我们想要的第N到第2N条记录。下面是一个具体的例子:
注:其中的PageSize(分页的大小)和PageIndex(分页索引,初始假设为0)均为变量,请相应处理。
SELECT * FROM (
SELECT TOP [PageSize] * FROM (
SELECT TOP [PageSize * (PageIndex + 1)] * FROM Doc WHERE docSort=’Java’ ORDER BY id DESC
) ORDER BY id ASC
)ORDER BY id DESC
相关文章推荐
- 在Access中实现类似视图的功能
- Redis实现类似同步方法调用的功能(一)
- 在Access中实现类似视图的功能
- JS实现延迟隐藏功能的方法(类似QQ头像鼠标放上展示信息)
- javascript实现类似百度分享功能的方法
- javascript实现类似百度分享功能的方法
- Redis实现类似同步方法调用的功能(二)
- JSTL中想要实现break类似功能的实现方法!
- 扩展 delphi 泛型 以实现类似lambda功能 , C#中的any count first last 等扩展方法
- php异步:在php中使用fsockopen curl实现类似异步处理的功能方法
- opencv实现类似MATLAB中find功能的方法
- C#实现类似jQuery的方法连缀功能
- 动态方法调用和使用通配符实现类似struts1.x的dispatchAction功能
- 【笔记】js原生方法 在元素外部或内部实现添加元素功能(类似jq 的 insert 和 append)
- 在Access实现类似Vlookup功能
- 利用PostgreSQL 9.5的外部表的继承功能,实现类似数据分片的方法
- 扩展 delphi 泛型 以实现类似lambda功能 , C#中的any count first last 等扩展方法
- php异步:在php中使用fsockopen curl实现类似异步处理的功能方法
- 当我们想点击一个链接实现删除或者类似的功能,想给出一个提示,具体实现方法
- 实现类似QQ聊天列表的segment点击切换tableView的数据功能