【发布时间】:2020-10-08 01:11:24
【问题描述】:
我有一个要求,我需要将 distinct 与 skip 和 limit 一起使用,我为此搜索了很多,但没有发现任何有用的东西,根据一些答案,旧版本的 spring data mongodb 不支持它,而在较新的版本中是有什么方法可以使用它,或者有什么解决方案可以通过聚合框架实现不同的跳过和限制
【问题讨论】:
标签: mongodb aggregation-framework spring-data-mongodb
我有一个要求,我需要将 distinct 与 skip 和 limit 一起使用,我为此搜索了很多,但没有发现任何有用的东西,根据一些答案,旧版本的 spring data mongodb 不支持它,而在较新的版本中是有什么方法可以使用它,或者有什么解决方案可以通过聚合框架实现不同的跳过和限制
【问题讨论】:
标签: mongodb aggregation-framework spring-data-mongodb
我没有添加 distinct 但使用了跳跃,聚合限制
Aggregation agg = newAggregation(match(Criteria.where("goalId").is(goal.getId())), skip((long) request.getPage() * request.getSize()),limit(request.getSize()));
final AggregationResults<ActivityHistory> results = mongoOperations.aggregate(agg, ActivityHistory.class, ActivityHistory.class);
List<ActivityHistory> activityHistoryList = results.getMappedResults();
【讨论】: