有关分页 SQL 的资料很多,有的使用存储过程,有的使用游标。本人不喜欢使用游标,我觉得它耗资、效率低;使用存储过程是个不错的选择,因为存储过程是经过预编译的,执行效率高,也更灵活。先看看单条 SQL 语句的分页 SQL 吧。
方法1:
适用于 SQL Server 2000/2005
SELECT TOP 页大小 *
FROM table1
WHERE id NOT IN
(
SELECT TOP 页大小 * (页 数 - 1 ) id FROM table1 ORDER BY id
)
ORDER BY id
方法2:
适用于 SQL Server 2000/2005
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
方法3:
适用于 SQL Server 2005
SELECT TOP 页大小 *
FROM
(
SELECT ROW_NUMBER() OVER ( ORDER BY id) AS RowNumber, * FROM table1
) A
WHERE RowNumber > 页大小 * (页数 - 1 )
说明,页大小:每页的行数;页数:第几页。使用时,请把“页大小”和“页大小*(页数-1)”替换成数字。
分享到:
相关推荐
关于SQL Server SQL语句查询分页数据的解决方案
SqlServer数据库中的分页语句,SqlServer分页SQL语句特点:一次查询,数据库只返回一页的数据。而不是取出所有的数据。
sqlserver分页查询语句;sqlserver分页查询语句;sqlserver分页查询语句;
SQL server2008中通用分页存储过程,表名,每页长度,页码都是动态赋值。
介绍就不多说了,下边是部分目录,觉得有用的话就顶一个<br/>C:.<br/>│ sqlserver2000.txt<br/>│ <br/>├─第01章<br/>│ 1.9.1 设置内存选项.sql<br/>│ 1.9.2(2) 使用文件及文件组.sql<br/>│ 1.9.2(3) 调整...
用SQL实现分页显示
几条常见的数据库分页SQL 语句,针对oracle,sqlserver,mysql三种常见数据库的分页显示。
在sqlserver数据库中,本例采用TOP语句分页,100W条数据为例,效率还不错,有测试的屏幕录像程序,有相关代码。
sql server 分页大全, 分页存储过程,分页TSQL , 分页语法,语句! 最全的SQL Server2000 分页方法。 可放心下载
sql server2005 分页查询语句
SQL Server 存储过程及Oracle SQL语句分页
1.只需要提供Sql语句和每页的记录数,页数就可以了 2,速度超快哟,100W记录1~3秒就分出来了 3,对于存储过程特别好用
SQL分页语句 有关分页 SQL 的资料很多,有的使用存储过程,有的使用游标。本人不喜欢使用游标,我觉得它耗资、效率低;使用存储过程是个不错的选择,因为存储过程是经过预编译的,执行效率高,也更灵活。先看看单条 ...
提供详细的sql语句,常用sql语句,sql语句的进阶过程
1、本版分页只针对Sql Server数据库,采用top n分页方式,节约资源。 2、支持GridView、DataGrid、...Jselect SQL语句 Jsortfield 排序字段,可以组合,如 "id desc,time desc" Jstyle 分页样式,Default默认样式
简易的sqlserver分页功能,只需要将页码传入即可...3、传入mybitis中 在sql语句头部调用 ${pading.begin} 结尾调用 ${pading.end}即可实现分页 4、默认每页10条 若需要更改 则修改该类源码中 的成员变量即可(有注释)
用的是sql server2000 自带的NorthWind表,你要做的就是传一条普普通通的sql语句,思想是oracle 的伪列,但是sql server2000根本就没有伪列,于是我就想了个办法,哈哈。欢迎修改。如果大家有好的分页思想欢迎交流...
3大数据库(Sql-Server,MySql和Oracle)的分页SQL语句实现
sqlserver 分页调用的存储过程 t-sql 语句
sql server数据库中分页的存储过程,参数中比较灵活,如果首页传1,非首页传其他。