MongoDB - 按数组索引排序

时间:2016-09-01 17:12:50

标签: mongodb

我有一个数组import org.springframework.data.geo.Metrics; final NearQuery query = NearQuery.near(new Point(longitude, latitude), Metrics.KILOMETERS) .num(limit) .minDistance(distanceInKiloMeters) .maxDistance(maxNearByUEDistanceInKiloMeters) .spherical(true); final Aggregation a = newAggregation(geoNear(query, "distance")); final AggregationResults<PlaceWithDistance> results = offlineMongoTemplate.aggregate(a, "myCollectionName", PlaceWithDistance.class); final List<PlaceWithDistance> measurements = new ArrayList<PlaceWithDistance>(results.getMappedResults()); - 这包含x个ID。

我正在使用这是一个像:

这样的集合
idsToHunt

现在我有Question.aggregate([ {$match: {publicID: { $in: idsToHunt} }, {$project: {_id:0, publicID:1, score:1} }, {$sort: {score: -1}} ], function(err, found) { nextStep = found resolve(); }) - 我真正想做的是按{$sort: {score: -1}}的索引排序。

所以如果idsToHunt

然后我希望预计结果如下:

idsToHunt = ['da22', 'ye66', '17hy']

而不是现在的随机顺序:

{publicID: 'da22', score: '2'}, {publicID: 'ye66', score: '2'}, {publicID: '17hy', score: '2'}

希望这是有道理的 - 任何帮助都会受到赞赏。

感谢。

0 个答案:

没有答案