sql server 分页
2015-11-13 15:26
323 查看
测试数据脚本
create database DBTest use DBTest --创建测试表 create table pagetest ( id int identity(1,1) not null, col01 int null, col02 nvarchar(50) null, col03 datetime null ) declare @i int set @i=0 while(@i<10000) begin insert into pagetest select cast(floor(rand()*10000) as int),left(newid(),10),getdate() set @i=@i+1 end
声明变量
declare @pageNum int=50 declare @page int =199
分页之效率最高
SELECT TOP (@pageNum) * FROM pagetest WHERE id NOT IN ( SELECT TOP (@pageNum*(@page-1)) id FROM pagetest ORDER BY id ) ORDER BY id
分页之最常用
SELECT TOP(@pageNum) * FROM ( SELECT ROW_NUMBER() OVER (ORDER BY id) AS RowNumber,* FROM pagetest ) A WHERE RowNumber > (@pageNum*(@page-1))
相关文章推荐
- 在Centos上面用yum install安装redis
- [MongoDB]Mongodb攻略
- SQL全文搜索
- redis初试牛刀
- 经典SQL语句大全
- C#实现过滤sql特殊字符的方法集合
- 修改Oracle sql developer日期显示格式
- mysql数据库忘记密码时如何修改
- mysql 中某一列字符串中特定字符以后的内容
- 产生sql语句的vba
- MongoDB 运维常用操作
- 关于数据库的部分入门操作
- MongoDB 运维常用操作
- Kettle 5.2 缺少MySql驱动
- sql中游标的使用
- Oracle 细粒度审计监控表操作记录
- oracle-行转列 oracle11g sql新功能pivot/unpivot
- MySQL在字段中使用select子查询
- PostgreSQL的监控三(zabbix)
- PostgreSQL的监控二(pgwatch & pg_statsinfo)