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

Wie führe ich eine aggregierte Mongo-Abfrage mit json in einem String durch?

Sie sind nicht weit von der Lösung entfernt:

Die Aggregatfunktion nimmt:.aggregate(List<DBObject>) Aber die JSON.parse, die Sie verwenden möchten, lässt Sie in sie umwandeln, wenn Sie eine Liste in Ihrer Abfrage haben, also kein Problem

String query="[....}";
List<DBObject> q= (List<DBObject>)JSON.parse(query);
Iterable<DBObject> result=new MongoClient().getDatabase("db").getCollection("coll").aggregate(q).results();`

Die Ergebnisse können dann iteriert werden.