sqlserver小结(基于sqlserver的四种分页方式总结)
sqlserver小结
基于sqlserver的四种分页方式总结第一种:ROW_NUMBER() OVER()方式
select * from (
select *, ROW_NUMBER() OVER(Order by ArtistId ) AS RowId from ArtistModels
) as b
where RowId between 10 and 20
---where RowId BETWEEN 当前页数-1*条数 and 页数*条数---
执行结果是:
第二种方式:offset fetch next方式(SQL2012以上的版本才支持:推荐使用 )
select * from ArtistModels order by ArtistId offset 4 rows fetch next 5 rows only
--order by ArtistId offset 页数 rows fetch next 条数 rows only ----
执行结果是:
第三种方式:--top not in方式 (适应于数据库2012以下的版本)
select top 3 * from ArtistModels
where ArtistId not in (select top 15 ArtistId from ArtistModels)
------where Id not in (select top 条数*页数 ArtistId from ArtistModels)
执行结果:
第四种方式:用存储过程的方式进行分页
CREATE procedure page_Demo
@tablename varchar(20),
@pageSize int,
@page int
AS
declare @newspage int,
@res varchar(100)
begin
set @newspage=@pageSize*(@page - 1)
set @res='select * from ' +@tablename+ ' order by ArtistId offset '+CAST(@newspage as varchar(10)) +' rows fetch next '+ CAST(@pageSize as varchar(10)) +' rows only'
exec(@res)
end
EXEC page_Demo @tablename='ArtistModels',@pageSize=3,@page=5
执行结果:
ps:今天搞了一下午的分页,通过上网查资料和自己的实验,总结了四种分页方式供大家参考,有问题大家一起交流学习。
- sqlserver触发器修改当前字段(利用SQL Server触发器实现表的历史修改痕迹记录)
- sqlserver触发器循环条件(SQL Server 利用触发器对多表视图进行更新的实现方法)
- 2021-10-24 10:26:05
- sqlserver 怎么排序(SQLserver排序规则基本概念探索)
- sqlserverlog原理(sql server中错误日志errorlog的深入讲解)
- sqlserver数据库基本操作(SQL Server四个系统表的知识讲解)
- sqlserver 开启数据库(SQLSERVER简单创建DBLINK操作远程服务器数据库的方法)
- sqlserver2016安装教程(SQL server 2016 安装步骤图文教程)
- SqlServer类似正则表达式的字符处理问题(SqlServer类似正则表达式的字符处理问题)
- sqlserver表分区缺点(SQL Server 公用表表达式CTE实现递归的方法)
- sqlserver使用说明(SQL Server视图的讲解)
- sqlserver实现登录注册(Sqlserver创建用户并授权的实现步骤)
- sqlserver代理无法启动错误1607(SQL Server代理:理解SQL代理错误日志处理方法)
- sqlserver怎么手动添加数据库表(SQL Server 数据库调整表中列的顺序操作方法及遇到问题)
- sqlserver数据库中锁的4种类型(SQLSERVER对加密的存储过程、视图、触发器进行解密推荐)
- SQLServer获取临时表所有列名或是否存在指定列名的方法(SQLServer获取临时表所有列名或是否存在指定列名的方法)
- 汉族(汉族的祖先是谁)
- 中国有几个名族(中国有几个民族没列入56个民族)
- 数学语文题目(语文的数学题)
- 香蕉(香蕉三种人不宜吃)
- 没钱可以快乐吗(没钱也能快乐吗)
- 快乐是什么(快乐就是)
热门推荐
- django实现登录注册(django与小程序实现登录验证功能的示例代码)
- mysql缓存是什么(详解mysql查询缓存简单使用)
- mysql8.0如何配超时时间(解决MySQL8.0时区的问题步骤)
- css弹出遮罩层页面不可滑动(Html5页面点击遮罩层背景关闭遮罩层)
- vue路由跳转自动定位在哪里(Vue路由this.route.push跳转页面不刷新的解决方案)
- css长度单位有哪些(聊一聊CSS中的长度单位的使用)
- python完整异常机制(深入理解Python异常处理的哲学)
- mongodb query查询
- 什么是迪米特法则
- kubernetes 虚拟机安装(VirtualBox+Ubuntu16搭建Kubernetes集群的实现)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9