怎样从sql中取出第20-40条间的记录

gmz 2003-08-19 05:36:19
向各位讨教一个比较好的方法
...全文
63 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
fanpingli 2003-08-19
  • 打赏
  • 举报
回复
select *,IDENTITY(1,1) as 序号 into #Tmp from 你的表
select * from #Tmp where 序号 between 20 and 40

说明:#tmp是一个临时表,好果你的表中有IDENTITY自动增加项,就不能*了,要一一列出你要显示的列名.
zqfleaf 2003-08-19
  • 打赏
  • 举报
回复
rs.pagesize=20
rs.open strsql,cn,3,1
rs.absolutepage=2
落伍者 2003-08-19
  • 打赏
  • 举报
回复
如果 你不删除数据,而且记录按照id排序,可以实现。
否则,我知道的办法就是,取出40条记录,然后移动指针到21条。
射天狼 2003-08-19
  • 打赏
  • 举报
回复
前面的写错了,应该改成这样!
select top 20 ID from DAILI WHERE ID IN (SELECT TOP 40 ID FROM DAILI ORDER BY ID asc) order by id desc;
dreamreality 2003-08-19
  • 打赏
  • 举报
回复
select *,IDENTITY(1,1) as 序号 into Tmp from 你的表
select * from Tmp where 序号 between 20 and 40
射天狼 2003-08-19
  • 打赏
  • 举报
回复
DAILI 为表名,ID 为表中的字段(主键)
射天狼 2003-08-19
  • 打赏
  • 举报
回复
select top 20 ID from DAILI WHERE ID IN (SELECT TOP 40 ID FROM DAILI ORDER BY ID DESC);

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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