mssql

推荐列表 站点导航

当前位置:首页 > 数据库 > mssql >

sql 查询记录数结果集某个区间内记录

来源:网络整理  作者:网络  发布时间:2020-12-10 16:51
sqlserver如何实现查询记录数某个区间内记录,本文将提供多种解决方法,需要了解的朋友可以参考下...


(select top 20 id from tablename order by id asc)
order by id asc
left outer join (select top 20 * from tablename order by id asc) B
where id not exists
select top 10 * from (select top 30 * from tablename order by id asc) A order by id desc
order by A.id asc
方法三: 使用not exists


where id not in
中第五种方法看上去好像没有问题,查了下文档,当over()用于rank/row_number时,整型列不能描述一个列,所以会产生非预期的效果. 待考虑下,有什么办法可以修改为想要的结果. 以查询前20到30条为例,主键名为id

方法五: 使用rank()
方法四: 使用not in
where B.id is null
(select rank() over(order by id asc) rk, id from tablename) T
select top 10 * from tablename
select top 10 A.* from tablename A
方法二: 使用left join

where rk between 20 and 30
select top 10 * from tablename A
on A.id = B.id
方法一: 先正查,再反查
select id from
(select top 20 * from tablename B on A.id = B.id)

相关热词:

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://www.juheyunku.com/sql/mssql/2237.shtml

最新文章
sql server 关于设置null的一 sql server 关于设置null的一

时间:2020-12-28

详解SQL游标的用法 详解SQL游标的用法

时间:2020-12-27

vs code连接sql server数据库步 vs code连接sql server数据库步

时间:2020-12-27

图书管理系统的sqlserver数 图书管理系统的sqlserver数

时间:2020-12-25

详解SQL 通配符 详解SQL 通配符

时间:2020-12-25

sql四大排名函数之ROW_NUM sql四大排名函数之ROW_NUM

时间:2020-12-25

SQLServer数据库处于恢复挂 SQLServer数据库处于恢复挂

时间:2020-12-24

Win10 64位安装个人版SQL20 Win10 64位安装个人版SQL20

时间:2020-12-24

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

sql 查询记录数结果集某个区间内记录

2020-12-10 编辑:网络



(select top 20 id from tablename order by id asc)
order by id asc
left outer join (select top 20 * from tablename order by id asc) B
where id not exists
select top 10 * from (select top 30 * from tablename order by id asc) A order by id desc
order by A.id asc
方法三: 使用not exists


where id not in
中第五种方法看上去好像没有问题,查了下文档,当over()用于rank/row_number时,整型列不能描述一个列,所以会产生非预期的效果. 待考虑下,有什么办法可以修改为想要的结果. 以查询前20到30条为例,主键名为id

方法五: 使用rank()
方法四: 使用not in
where B.id is null
(select rank() over(order by id asc) rk, id from tablename) T
select top 10 * from tablename
select top 10 A.* from tablename A
方法二: 使用left join

where rk between 20 and 30
select top 10 * from tablename A
on A.id = B.id
方法一: 先正查,再反查
select id from
(select top 20 * from tablename B on A.id = B.id)

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://www.juheyunku.com/sql/mssql/2237.shtml

相关文章

风云图片

推荐阅读

返回mssql频道首页