Sql Server实现limit用法
案例前导数据
-- 浏览记录表:浏览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,从而实现分页
相关文章