情况是这样的,现在需要一个在oracle下面的分页查询语句,他涉及两张表
我用了最普通的rownum的方法来实现,效果是有了,但是发现他顺序不确定rownum的值并不是按照排序的值来,后来查询资料发现了这篇文章
oracle rownum排序说了rownum的确不会按你排序的值来,因为是先记rownum,再排序,中了也提了解决方案,排序用主键/索引来做就可以了后来试了一下,的确用主键来排序rownum可以按排序来,但是当我现在多表查询系 主键排序就无效了
查询的还是乱序
下面来看下图:原数据时这样的,
我用了普通rownum分页之后来看一下带rownum的图,
他没和主键或者创建时间的排序对上请问各位高手有木有方法在多表查询下rownum按照排序来
现在我只有在多表查询时先用子查询排序好再产生rownum是可以,但是效率低啊,请问各位大神有木有其他方法Oracle多表查询分页
我用了最普通的rownum的方法来实现,效果是有了,但是发现他顺序不确定rownum的值并不是按照排序的值来,后来查询资料发现了这篇文章
oracle rownum排序说了rownum的确不会按你排序的值来,因为是先记rownum,再排序,中了也提了解决方案,排序用主键/索引来做就可以了后来试了一下,的确用主键来排序rownum可以按排序来,但是当我现在多表查询系 主键排序就无效了
查询的还是乱序
下面来看下图:原数据时这样的,
我用了普通rownum分页之后来看一下带rownum的图,
他没和主键或者创建时间的排序对上请问各位高手有木有方法在多表查询下rownum按照排序来
现在我只有在多表查询时先用子查询排序好再产生rownum是可以,但是效率低啊,请问各位大神有木有其他方法Oracle多表查询分页
解决方案 »
- oracle 分析函数
- oracle数据库重复安装
- ORACLE字符串截取成数组
- rman备份/恢复Oracle10g数据库的问题
- 一个关于表使用聚合函数的问题:查找所有员工的最大工资数值且显示该工资所属人的ID,详见内。
- 如何写一个批量插入数据的函数,同时要求对某一字段自动编号.
- C++ Buiider 6 + ODAC 4.5如何获得Oracle存储过程的输出参数?
- 为什么更改和禁用了用户口令后,还能用原来的口令登陆oracle????
- 初学:数据库中两表之间有一字段相关联请问如何进行Insert
- 如何将选择出的内容存入文本文件???
- 请问PL/SQL可以将存储过程中的相关if..end if折叠吗?
- oracle简单问题
用rownum方式的分页查询为何一定要三层嵌套?
看到了这么一篇文章,他三层也就是再一次子查询,难道真的只有这种实现方法吗
SELECT ROWNUM AS RN,* FROM (结合部分)
不好吗?
不用谈SQL效率高低,你需要对全表排序,取出其中固定位置的若干条,你写数据库,能给个效率不低的实现方法吗?