MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Führen Sie MongoTemplate.aggregate ohne Zeilenabruf aus

Verwenden Sie AggregationOption - skipOutput() . Dies gibt kein Ergebnis zurück, falls die Aggregationspipeline den Vorgang $out/$merge enthält.

mongoTemplate.aggregate(aggregation.withOptions(newAggregationOptions().skipOutput().allowDiskUse(true).build()), "collectionNme", EntityClass.class);

Wenn Sie MongoDriver ohne Framework verwenden.

MongoClient client = MongoClients.create("mongodb://localhost:27017");
 MongoDatabase database = client.getDatabase("my-collection");
 MongoCollection<Document> model = database.getCollection(collectionName);
 AggregateIterable<Document> aggregateResult = model.aggregate(bsonListOfAggregationPipeline);
 
 // instead iterating over call toCollection() to skipResult
 aggregateIterable.toCollection();

Referenzen: