find API 根据条件搜索,分页时可能导致搜索数据重复

问题发生的原因: Fx api 传入一批 id, 并且分页的时候,有可能 查询出来数据不全,出现重复

1 Fx.object.find 这个API 如果不传排序条件, 默认的查询逻辑是 last_modified_time 去排序的如果数据中存在 很多排序字段相同的数据时, 数据库每次的排序是不能保证,数据的顺序一模一样完全一致

数据库中这个对象的 last_modified_time = 1614271236576 相同的数据是10条
因为使用了分页,数据库的排序字段如果出现多条数据重复的时候,查询出来的顺序是不一致的,所以分页查询出来数据可能重复,导致缺少。
2 解决问题的方式,增加另一个 不可能重复的字段,参与到排序当中,也就是 _id, 这样就可以保证数据查询出来,每次排序都是一致的。

2023-02-13
0 0