Как сортировать в Пн go Весна @Aggreation? - PullRequest
0 голосов
/ 18 июня 2020

У меня есть

 @Aggregation({
        "{'$match': {'$and': [ { 'xId' : ?0 },{'pDay': { '$gte': ?1 } },{'pDay': { '$lte': ?2 } }, ] } }",
        "{'$sort': {'x2': 1,'x3': 1}}",
        "{$group: { _id: $pDay, abcs: { $addToSet : $$ROOT }}}",
        "{'$limit': ?4}",
        "{'$skip': ?5}"
})

, но в результате я вижу одну запись со списком abcs, но элементы в in не отсортированы по x2.

То же самое для сортировки после группы.

public class XView {
    @Id
    Long pDay;
    List<X> abcs;
}
@Document
public class X {
    String xId; 
    String x2; 
    String x3;
}

1 Ответ

1 голос
/ 18 июня 2020

$group не сохраняет порядок.

 @Aggregation({
        "{'$match': {'$and': [ { 'xId' : ?0 },{'pDay': { '$gte': ?1 } },{'pDay': { '$lte': ?2 } }, ] } }",
        "{$group: { _id: $pDay, abcs: { $addToSet : $$ROOT }}}",
        "{'$sort': {'x2': 1,'x3': 1}}",
        "{'$limit': ?4}",
        "{'$skip': ?5}"
})

https://docs.mongodb.com/manual/reference/operator/aggregation-pipeline/

https://docs.mongodb.com/manual/core/aggregation-pipeline/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...