Oracle在查询Sql中不使用order by,导致数据量足够大的时候同样的sql查询的结果顺序不同?

如题,导致的问题是分页功能有问题,有的数据重复显示,有的数据怎么也查询不到。 因为是基础框架的修改,为了不影响现有的功能,希望在不加order by的情况下解决这个问题,不知道有没有什么好的办法

第1个回答  2020-02-16
oracle是按照rowid来排序的,也就是每一行的地址,当中间发生一些数据操作,比如删除数据时,这个物理地址会被新数据使用,oracle的数据在存的时候也是杂乱无序的,可以通过创建索引,根据索引查询解决问题
第2个回答  2020-02-05
加一列rownum(oracle自带),然后按照分页取数字就是了。
我不知道你的具体分页方式,只能给一个通用的方法。本回答被网友采纳
相似回答