您现在的位置是:网站首页> 编程资料编程资料
SQL2005利用ROW_NUMBER() OVER实现分页功能_mssql2005_
2023-05-27
366人已围观
简介 SQL2005利用ROW_NUMBER() OVER实现分页功能_mssql2005_
1.首先介绍ROW_NUMBER() OVER的基本用法

2.看一下实例数据
初始化数据
create table employee (empid int ,deptid int ,salary decimal(10,2))
insert into employee values(1,10,5500.00)
insert into employee values(2,10,4500.00)
insert into employee values(3,20,1900.00)
insert into employee values(4,20,4800.00)
insert into employee values(5,40,6500.00)
insert into employee values(6,40,14500.00)
insert into employee values(7,40,44500.00)
insert into employee values(8,50,6500.00)
insert into employee values(9,50,7500.00)
数据结果显示

根据部门分组(deptid),显示每个部门的工资(salary)等级

这是想要得到的结果第二列根据部门进行分组,第三列工资由高到低,rank进行部门内部的排列
3.简单分页实现
SELECT Row_Number() OVER (ORDER BY salary desc) rank,* FROM employee
根据上面1,2两点我们可以看出这个SQL只是按照工资降序排序后,并没有通过PARTITION BY COLUMN进行分区(分组),然后通过row_number()从1开始,为每一条分组记录返回一个数字。结果如下

将上面SQL返回的结果集当作一个数据表
(SELECT Row_Number() OVER (ORDER BY salary desc) rank,* FROM employee)as NewTable
假如我们每页5条记录,
那么第一页显示select * from (SELECT Row_Number() OVER (ORDER BY salary desc) rank,* FROM employee ) as NewTable where rank between 1 and 5

第二页为select * from (SELECT Row_Number() OVER (ORDER BY salary desc) rank,* FROM employee ) as NewTable where rank between 6 and 10

当然我们第二页这里只有4条记录。
分页就这样实现了,对于多表查询进行分页也是同样的道理。
- sqlserver 通用存储过程分页代码(附使用ROW_NUMBER()和不使用ROW_NUMBER()两种情况性能分析)
- 一个基于ROW_NUMBER()的通用分页存储过程代码
- sqlserver2005使用row_number() over分页的实现方法
- Oracle row_number() over()解析函数高效实现分页
- C#拼接SQL语句 用ROW_NUMBER实现的高效分页排序
- 高效的SQLSERVER分页查询(推荐)
- 解析数据库分页的两种方法对比(row_number()over()和top的对比)
- 使用row_number()实现分页实例
- SQLSERVER分页查询关于使用Top方式和row_number()解析函数的不同
- SQL Server使用row_number分页的实现方法
相关内容
- sql2005 日志清理 SQL2005压缩清除日志的方法_mssql2005_
- SQL Server 2005 DTS导入平面数据出现错误解决方案_mssql2005_
- mssql2005数据库镜像搭建教程_mssql2005_
- sql server 2005用户权限设置深入分析_mssql2005_
- sql2005 数据库转为sql2000数据库的方法(数据导出导入)_mssql2005_
- 让sql2005运行在独立用户下出现 WMI 提供程序错误的解决方式_mssql2005_
- MSSQL2005在networkservice权限运行附加数据库报(Microsoft SQL Server,错误: 5120)_mssql2005_
- Sql Server安装出错,安装程序配置服务器失败的解决方法小结_mssql2005_
- 同时安装vs2005团队开发版和sql 2005企业版的方法(downmoon原作)_mssql2005_
- 无法在com+ 目录中安装和配置程序集 错误:-2146233087的解决方法[已测]_mssql2005_
