当前位置:  数据库>sqlserver

sql server中查询某个区间内数据的方法

    来源: 互联网  发布时间:2014-08-29

    本文导语:  sql server中查询某个区间内数据的方法,有需要的朋友可以参考下。 以下内容以查询前20到30条为例,主键名为id。 方法一: 先正查,再反查   代码如下: select top 10 * from (select top 30 * from tablename order by id asc) A order by id desc 方法二...

sql server中查询某个区间内数据的方法,有需要的朋友可以参考下。
以下内容以查询前20到30条为例,主键名为id。

方法一: 先正查,再反查
 

代码如下:
select top 10 * from (select top 30 * from tablename order by id asc) A order by id desc

方法二: 使用left join
 

代码如下:
select top 10 A.* from tablename A
left outer join (select top 20 * from tablename order by id asc) B
on A.id = B.id
where B.id is null
order by A.id asc

方法三: 使用not exists
 

代码如下:
select top 10 * from tablename A
where id not exists
(select top 20 * from tablename B on A.id = B.id)

方法四: 使用not in
 

代码如下:
select top 10 * from tablename
where id not in
(select top 20 id from tablename order by id asc)
order by id asc

方法五: 使用rank()
 

代码如下:
select id from
(select rank() over(order by id asc) rk, id from tablename) T
where rk between 20 and 30

第五种方法看上去好像没有问题,查了下文档,当over()用于rank/row_number时,整型列不能描述一个列,所以会产生非预期的效果。


    
 
 

您可能感兴趣的文章:

  • java 中如何用SQL 查时间区间???急!!!!!
  • sql 查询记录数结果集某个区间内记录
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 安装SQL2008时提示删除SQL2005Express工具的解决方法
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • C#使用带like的sql语句时防sql注入的方法
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • sql无效字符引起的执行sql语句报错的解决方法
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server降权运行 SQL Server 2000以GUESTS权限运行设置方法
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • (X86/X64)安装sql server 2005 过程中提示“无法启动sql server的 启动”的解决方法
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍
  • sql数据库多用户模式修改方法
  • java命名空间java.sql接口rowid的类成员方法: tostring定义及介绍
  • 安装sql server 2008 management提示已安装 SQL Server 2005 Express的解决方法
  • java命名空间javax.sql.rowset接口joinrowset的类成员方法: getwhereclause定义及介绍
  • C#代码验证sql语句是否正确(只验证不执行sql)的方法
  • java命名空间java.sql接口statement的类成员方法: execute定义及介绍
  • Sql2000与Sql2005共存安装的解决方法
  • java命名空间java.sql接口resultset的类成员方法: getcursorname定义及介绍
  • SQL查找某一条记录的方法
  • java命名空间java.sql接口resultsetmetadata的类成员方法: getcolumntype定义及介绍
  • sql server 代理(已禁用代理xp)的解决方法
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • SQL Server 2008如何进行数据库分离和附加详细介绍
  • sql server 删除表1某些数据的同时自动删除表2的相关数据的sql代码
  • 取数据库前几条数据(sql server、oracle、mysql)的sql写法
  • 查询SQL Server中所有数据库的数据文件位置的sql脚本
  • SQL Server数据库的修复SQL语句
  • 使用php语句将数据库*.sql文件导入数据库
  • 如何实现连接一次数据库,提交多个sql语句。(sql的批处理)
  • sql2005 大数据量检索分页的sql代码
  • t-sql/mssql用命令行导入数据脚本的SQL语句示例
  • 请问Linux数据库编程是否也可以支持通用的SQL语言进行数据库编写.
  • jsp jdbc为什麽不能把数据insert到sql server 中,也不能从sql server中提取数据?!
  • sql数据库如何查询修改数据库恢复模式?
  • sql添加数据后返回受影响行数据
  • sql语句获取数据库服务器上所有数据库的名字
  • sql 语句 取数据库服务器上所有数据库的名字
  • Access 数据类型与 MS SQL 数据类型的相应
  • linux下能调用*.sql备份的数据库数据么?
  • sql server 2005删除用户时“数据库主体在该数据库中拥有架构,无法删除”错误的解决办法
  • sql数据库修改数据库用户
  • 数据库前端 SQL Workbench-J
  • Oracle 数据库开发工具 Oracle SQL Developer
  • java命名空间javax.sql.rowset.spi类syncprovider的类成员方法: getrowsetwriter定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口sqlinput的类成员方法: readblob定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口sqlinput的类成员方法: readarray定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口sqlinput的类成员方法: readsqlxml定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口sqlinput的类成员方法: readrowid定义及介绍
  • SQL客户端软件 PKLite SQL Client


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3