求一SQL语句。高分求救

huiwww 2004-07-15 02:45:22
符合条件的纪录有30000条,但我不想一次性全部从服务器取出来,而是分三次取出俩,每次取10000条,那么,在取第二次10000条时,语句应该如何写。
...全文
51 5 点赞 打赏 收藏 举报
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
huiwww 2004-07-15
对于我和jacket008(§优国优民§) 想法,认为不大好,可惜不能再作结贴,可以的话希望做一个讨论
chinayk11(风中流云) 也许是不错的语句
  • 打赏
  • 举报
回复
chinayk11 2004-07-15
oracle:
select * from (select rownum line, t.* from table t)where line between
10001 and 20001
  • 打赏
  • 举报
回复
huiwww 2004-07-15
呵呵,我自己解决了。刚好遇jacket008(§优国优民§) 思路基本一样
是在oracl下面的语句
如下:select * from table where rownum<10000 and 主键 not in(select 主键 from table where rownum<10000*x)
  • 打赏
  • 举报
回复
jacket008 2004-07-15
查询第X页,每页Y条记录


即:查询第2页,每页10000条记录
  • 打赏
  • 举报
回复
jacket008 2004-07-15
查询第X页,每页Y条记录

最基本的处理方法(原理):

如果表中有主键(记录不重复的字段也可以),可以用类似下面的方法,当然y,(x-1)*y要换成具体的数字,不能用变量:

select top y * from 表 where 主键 not in(select top (x-1)*y 主键 from 表)





http://community.csdn.net/Expert/topic/3134/3134804.xml?temp=.3511164
  • 打赏
  • 举报
回复
相关推荐
发帖
数据库相关
创建于2007-08-02

2456

社区成员

Delphi 数据库相关
申请成为版主
帖子事件
创建了帖子
2004-07-15 02:45
社区公告
暂无公告