这条SQL语句真的能读出 第x条 到 第y条 之间的记录吗?

ShaB 2004-01-20 03:30:24
select top y * from 表 where 主键 not in(select top (x-1)*y 主键 from 表)
...全文
39 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
veryfool 2004-01-20
  • 打赏
  • 举报
回复
其实这句话只是一个简单的含义描述,就是说如果想取从第x条到第y条记录,那么先按照条件取出y条记录,然后在这y条记录中在去掉前x条记录
ShaB 2004-01-20
  • 打赏
  • 举报
回复
不过我还是看不明白这条语句的意思,能跟我解释一下吗?
ShaB 2004-01-20
  • 打赏
  • 举报
回复
难怪了,我的主键不是递增的......
veryfool 2004-01-20
  • 打赏
  • 举报
回复
严格来说,不可以,因为查询条件的结果集不一定是主键连续的,这里的主键是指一个字增长的字段
txlicenhe 2004-01-20
  • 打赏
  • 举报
回复
1:
为什么不试一下呢?
2:
select top y-x * from 表 where 主键 not in (select top y 主键 from 表)
3:
http://expert.csdn.net/Expert/topic/2365/2365596.xml?temp=.5068781
交流--查询第X页,每页Y条记录

34,587

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧