分享

Sql Server实现limit用法

 流楚丶格念 2022-01-14

文章目录

案例前导数据

-- 浏览记录表:浏览id(自增属性),浏览用户名,浏览书籍名
drop table browserecord;
create table browserecord(
recordid int identity(1,1) not null primary key,
username varchar(255) not null,
bookname varchar(255) not null ,
)

insert into browserecord values('小红','C++程序设计');
insert into browserecord values('小蓝','C++程序设计');
insert into browserecord values('小红','C++程序设计');
insert into browserecord values('1','C++程序设计');
insert into browserecord values('1','网络安全');
。。。。。自己再加点吧

select * from browserecord;

案例一:查前几条

今天发现sqlserver 里面不支持limit进行分页查询,想进行分页,怎么办呢,例如表数据如下,要查用户名为 1 的前5条记录

在这里插入图片描述
sql这么写

select TOP 5 *from browserecord where username = '1';

在这里插入图片描述

案例二:查第几条到第几条

那么如果要查 第四条到第七条信息呢
在这里插入图片描述

则sql这么写

SELECT TOP 4 * FROM browserecord 
WHERE browserecord.recordid
NOT IN
(SELECT TOP 3 recordid FROM browserecord)

在这里插入图片描述

如果要查 n-m之间的数据 第4行的数字是n-1,第一行的数字是m-n+1,从而实现分页

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多