Oracle分页查询中的问题

alex_suen 2014-12-05 12:40:50
SELECT * FROM (
SELECT A.*, ROWNUM AS RN FROM (
SELECT * FROM TABLE
) A WHERE ROWNUM <= 20) B WHERE RN >= 11


比如表中有13条数据,按照逻辑应该检索出3条,但是实际查询中10条数据,而且RN从11到20编号。

请问这是什么原因? 跟ROWNUM的机制有关还是ORACLE数据库的查询机制有关?


...全文
148 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
CT_LXL 2014-12-05
  • 打赏
  • 举报
回复
引用 楼主 s_521_h 的回复:
完全没问题,用你的语句测试过,也没问题,不知道你执行出来的结果为什么会有问题
alex_suen 2014-12-05
  • 打赏
  • 举报
回复
引用 1 楼 zlloct 的回复:
[quote=引用 楼主 s_521_h 的回复:]

完全没问题,用你的语句测试过,也没问题,不知道你执行出来的结果为什么会有问题[/quote]

引用 2 楼 bw555 的回复:
语句没问题,你是不是连错数据库了?


这是查询整张表的数据,只有25条记录。
http://my.csdn.net/my/album/detail/1799225

当我分页查询从21到30的数据时,仍然能查处10条。
http://my.csdn.net/my/album/detail/1799223
bw555 2014-12-05
  • 打赏
  • 举报
回复
语句没问题,你是不是连错数据库了?

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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