SQLServer数据分页

server/2024/9/25 2:31:54/

一.分页

将一定量的数据进行分页,每一页中定量存储数据

1.top分页查询

比如当前存在于数据库中的一共有40条数据,我们将每10条数据算作一页,那么一共可以分出4页,如果要进行查询的话,只需要使用如下格式即可:

sql">--查询第一页
select top 5 * from Student 
--查询第二页
select top 5 * from Student 
where Id not in(1,2,3,4,5,6,7,8,9,10)

注意点:虽然我们一般所使用的Id自增长形式为identity(1,1),即从1开始,每次增长1,但是在我们查询分页时还是要注意Id的自增长形式,避免出错

而从上方的示例中不知道你们有没有发现一个规律,写出来是这样的:

select top 页码 * from 表名 

where Id not in(select top 页码*(当前页-1) Id from 表名)

所以正确的分页查询格式应该为:

sql">select top 5 * from Student 
where Id not in(select top 0 Id from Student) 
select top 5 * from Student 
where Id not in(select top 5 Id from Student)
select top 5 * from Student 
where Id not in(select top 10 Id from Student)

若是运用了变量,那么就更容易理解了

sql">declare @Size int = 5 
declare @Page int = 1 
select top (@Size) * from Student 
where Id not in(select top (@Size * (@Page - 1)) Id from Student) 

只需要修改Page变量(页数),就可以查询到该页的数据了

2.row_number分页查询

格式为:

sql">select * from 
(select row_number() over(order by Id) RowId,* from Student) 
where Id between (当前页号-1) * 每页大小 + 1 and 当前页号 * 每页大小 

同样使用到变量进行举例:

sql">declare @Size int = 5 
declare @Page int = 1
select * from 
(select row_number() over(order by Id) RowId,* from Student) 
where Id between (@Page-1) * @Size + 1 and @Page * @Size  


http://www.ppmy.cn/server/121603.html

相关文章

【高级编程】XML DOM4J解析XML文件(含案例)

文章目录 DOM4JDOM4J 解析 XML读取修改添加删除 XML(EXtensible Markup Language),可扩展标记语言。一种用于存储和传输数据的标记语言。XML 与操作系统、编程语言的开发平台无关。实现不同系统之间的数据交换。 作用:数据交互&a…

python 实现double factorial recursive双阶乘递归算法

double factorial recursive双阶乘递归算法介绍 双阶乘(Double Factorial)是一个数学概念,它指的是从某个数开始,每隔一个数相乘直到1或指定的结束点。对于正整数n,其双阶乘有两种定义方式,取决于n的奇偶性…

用二分查询一个有序向量(或数组)中是否存在vector<T>[i]==i;

0. 下面【1】使用了类,【2】使用了函数 解析: - 因为我们的代码中不存在l mid1;r mid -1;这种可能会【跨越另一个指针】的情况,所以我们while条件写l1!r,言下之意,彼时你俩相差为1,我们就跳出循环了。…

YOLO交通目标识别数据集(红绿灯-汽车-自行车-卡车等)

YOLO交通目标识别 数据集 模型 ui界面 ✓图片数量15000,xml和txt标签都有; ✓class:biker,car,pedestrian,trafficLight,trafficLight-Green,trafficLight-GreenLeft, t…

数据增强:提升机器学习模型性能的利器

在机器学习领域,尤其是在处理图像、语音或文本等复杂数据时,数据的质量和数量往往是决定模型性能的关键因素之一。然而,在实际应用中,高质量且多样化的数据集往往难以获取,尤其是在某些专业领域或稀有事件分析中。这时…

基于微信小程序的竞赛答题小程序开发笔记(一)

开发背景调研 中小学学科答题小程序,适合各中小学校方,老师或者家长。通过互动和参与式学习,小程序能够通过游戏化元素提升学习的积极性和参与度,从而提升学习效率,促进学生自主学习 功能规划 分类题库:…

单片机学到什么程度才可以去工作?

说实话,10几年前,我自学单片机转行的时候,也是一头雾水,也是一边苦苦挣扎,一边迷茫的状态。 硬件、软件、编程...样样都需要学,连从哪儿开始都不知道,每次看到那些密密麻麻的电路图和代码&#…

菱形继承的类对父类的初始化、组合、多态、多态的原理等的介绍

文章目录 前言一、菱形继承的类对父类的初始化二、组合三、 多态1. 构成多态2. 虚函数3. 虚函数的重写4. 虚函数重写的两个例外1. 协变2. 析构函数的重写 5. C11 final 和 override1. final2. override 6. 设计不想被继承的类7. 重载、覆盖(重写)、 隐藏…