关于oracle分页出现数据重复的问题

今天出现一个bug,列表在翻页时出现上一页的数据。

最终发现是排序导致的,我的sql根据创建时间进行排序,但是这些数据是系统自动生成的,很多数据的创建时间一样,导致数据的排序变得随机化。

这个时候我们在order by 后再加一个pk排序即可。

比如:

修改前的sql:

SELECT * FROM table order by CREATE_DATE desc

修改后的sql:

SELECT * FROM table order by CREATE_DATE desc, ID

这个时候排序的字段数据不会再重复,就能够解决分页出现重复数据的问题。

原文地址:https://www.cnblogs.com/ywy8/p/13176746.html