在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
)
相关推荐
关于SQL Server SQL语句查询分页数据的解决方案
sqlserver分页查询语句;sqlserver分页查询语句;sqlserver分页查询语句;
用SQL实现分页显示
SQL server2008中通用分页存储过程,表名,每页长度,页码都是动态赋值。
SqlServer数据库中的分页语句,SqlServer分页SQL语句特点:一次查询,数据库只返回一页的数据。而不是取出所有的数据。
简易的sqlserver分页功能,只需要将页码传入即可,默认id倒序排列,一页十条,也可以通过传入不同参数,对不同字段,进行正序或倒序排列。 使用方法:1、将该类导入实体类包中 2、在需要分页的地方创建该类对象,并...
用SQL语句实现分页(Oracle版Sql Server版)
sql server 分页大全, 分页存储过程,分页TSQL , 分页语法,语句! 最全的SQL Server2000 分页方法。 可放心下载
sql server2005 分页查询语句
sql server数据库中分页的存储过程,参数中比较灵活,如果首页传1,非首页传其他。
SQL Server 存储过程及Oracle SQL语句分页
几条常见的数据库分页SQL 语句,针对oracle,sqlserver,mysql三种常见数据库的分页显示。
sqlserver 分页调用的存储过程 t-sql 语句
3大数据库(Sql-Server,MySql和Oracle)的分页SQL语句实现
SQL分页语句 有关分页 SQL 的资料很多,有的使用存储过程,有的使用游标。本人不喜欢使用游标,我觉得它耗资、效率低;使用存储过程是个不错的选择,因为存储过程是经过预编译的,执行效率高,也更灵活。先看看单条 ...
c#\book\实现分页的sql语句
在sqlserver数据库中,本例采用TOP语句分页,100W条数据为例,效率还不错,有测试的屏幕录像程序,有相关代码。
资源分已经降到最低,方便孩子们下载,这个demo是SQL Server的分页demo,,功能非常强大,代码简单(涉及jquery),希望该demo可以帮助广大爱学习的孩童们,,么么哒!其中demo里面的数据库配置,以及sql表,语句等,...
PagingOperation数据库SQLServer2008分页存储过程(和java调用存储过程源代码): 调用存储过程进行分页查询速度快,尤其是数据量超过50万条的表非常重要,此代码是我们项目中使用的,实际使用情况稳定,也希望大家...