如何在SQLServer中如何实现Limitm,n的功能

纯洁美丽。它化做雪花,用自己洁白的生躯覆盖在大地上。此时,一切都是银装素裹,一副冰清玉洁的模样。光秃秃的树枝上缀满了朵朵洁白的 "梨花 ",风一吹,花儿纷纷飘落,好似一只只银白色的蝴蝶在空中偏偏起舞。 "忽如一夜春风来,千树万树梨花开 ",这句诗不正是赞美冬天的吗?
在MySQL中,可以用 Limit 来查询第 m 列到第 n 列的记录,例如:

select * from tablename limit m, n

但是,在SQL Server中,不支持 Limit 语句。怎么办呢?
解决方案:
虽然SQL Server不支持 Limit ,但是它支持 TOP。
我们以SQL Server 2005为例,就以它自带的示范数据库 AdventureWorks 作为测试数据:

select id from tablename

如果要查询上述结果中前6条记录,则相应的SQL语句是:

select top 6 id from tablename

如果要查询上述结果中第 7 条到第 9 条记录,则相应的SQL语句是:

select top 3 id from tablename
where id not in (
select top 6 id from tablename
)


select top (n-m+1) id from tablename
where id not in (
select top m-1 id from tablename
)


select top @pageSize id from tablename
where id not in (
select top @offset id from tablename
)

以上就是如何在SQLServer中如何实现Limitm,n的功能。财富应当用正当的手段去谋求,应当慎重地使用,应当慷慨地用以济世,而到临死应当无留恋地与之分手。巨大的财富具有充分的诱惑力,足以稳稳当当地起到致命的作用,把那些道德基础并不牢固的人引入歧途。更多关于如何在SQLServer中如何实现Limitm,n的功能请关注haodaima.com其它相关文章!

您可能有感兴趣的文章
centos7 mysql5.7主从同步配置

centos7安装MySQL教程

达梦数据库DM8表空间管理之删除表空间

达梦数据库DM8表空间管理之创建表空间

国产达梦数据库常用SQL语句(上)