mongTemplate совокупное совпадение и проекция одного поля без идентификатора - PullRequest
0 голосов
/ 04 апреля 2019

Как запустить агрегат с сопоставлением и проекцией. Проекция включает в себя одно поле и исключает идентификатор.

db.collection("Collection").aggregate([
    {
        $match : {
            "someCriteriaFlag" : false
        }
    },
    {
        $project : {
            "field1" : 1,
            "_id" : 0
        }
    }
]);

В Java

Aggregation aggregation = Aggregation.newAggregation(
        Aggregation.match(Criteria.where("someCriteriaFlag").is(false)), 
        Aggregation.project("field1"));

List<String> fields= mongoTemplate.aggregate(aggregation, "Collection", BasicDBObject.class)
        .getMappedResults();

1 Ответ

0 голосов
/ 04 апреля 2019

Благодаря @ NeilLunn.

Aggregation aggregation = Aggregation.newAggregation(
    Aggregation.match(Criteria.where("someCriteriaFlag").is(false)), 
    Aggregation.project("field1").andExclude("_id"));

List<String> fields= mongoTemplate.aggregate(aggregation, "Collection", BasicDBObject.class)
    .getMappedResults();
...