SqlServer 分页学习

铁佛  金牌会员 | 2024-11-8 16:36:44 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 908|帖子 908|积分 2724

在B站上看到一个分页视频,老师讲的挺好 ,记录下来。想看原视频的可以去B站
--1.创建Students表
CREATE TABLE students (
    ID INT PRIMARY KEY IDENTITY(1,2),
    NAME NVARCHAR(50) NOT NULL,
    SEX CHAR(6) CHECK (SEX IN ('Male', 'Female'))
);
GO
--2. 插入30条数据
INSERT INTO students (NAME, SEX)
VALUES
('关羽', 'Male'),
('张飞', 'Male'),
('赵云', 'Male'),
('马超', 'Male'),
('黄忠', 'Male'),
('诸葛亮', 'Male'),
('曹操', 'Male'),
('刘备', 'Male'),
('孙权', 'Male'),
('周瑜', 'Male'),
('司马懿', 'Male'),
('夏侯惇', 'Male'),
('许褚', 'Male'),
('典韦', 'Male'),
('庞统', 'Male'),
('姜维', 'Male'),
('陆逊', 'Male'),
('魏延', 'Male'),
('张辽', 'Male'),
('徐晃', 'Male'),
('甘宁', 'Male'),
('太史慈', 'Male'),
('吕蒙', 'Male'),
('孙尚香', 'Female'), -- 作为例子,孙尚香是女性
('祝融夫人', 'Female'), -- 祝融夫人是孟获之妻,在《三国演义》中有出场
('马云騄', 'Female'), -- 马超之妹,在民间传说中出现
('邹氏', 'Female'), -- 张济之妻,在《三国演义》中提到
('蔡文姬', 'Female'), -- 闻名才女
('貂蝉', 'Female'); -- 在《三国演义》中闻名的虚构人物
--3.分页:假设每页5条数据
--查询第一页
select top 5 * from students

--第二页
select top 5 * from students where id not in(1,3,5,7,9)

 --select top 5 * from students where id not in(1,3,5,7,9)
 1,3,5,7,9有点麻烦,可以替换一下
利用select top 5 id  from students 
select top 5 * from students
where
id not in(select top 5 id  from students)
-- 第三页
select top 5 * from students
where
id not in(select top 10 id from students)
 
 
--推公式
select top 每页数目 * from students
where
id not in(select top 每页数目*(当前页-1) id from students)
--定义变量:top后如果是变量需要把变量用括号包裹
declare @PageSize int=5
declare @PageIndex int =1
select top (@PageSize) * from students
where id not in(select top (@PageSize*(@PageIndex-1)) id from students)

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

铁佛

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表