sql >> Database >  >> NoSQL >> MongoDB

MongoTemplate.aggregate uitvoeren zonder het ophalen van rijen

Gebruik AggregationOption - skipOutput() . Dit geeft geen resultaat als de aggregatiepijplijn $out/$merge-bewerking bevat.

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

Als u MongoDriver gebruikt zonder framework.

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();

Referenties:



  1. Hoe milliseconden tot nu toe te converteren in mongodb-aggregatie?

  2. Hoe niet-operators te combineren met behulp van de lentegegevens Criteria-builder

  3. Hoe db.Collection.stats() aanroepen vanuit Mongo java-stuurprogramma

  4. mongodb-indexen die ontbrekende waarden dekken