mongodb Mongo group by query转换为java
我应该如何在java中转换mongo查询,我使用了mongo java驱动程序
db.demo.aggregate([
// Unwind the array
{ "$unwind": "$iInfo" },
// Sort the array elements within documents
{ "$sort": { "_id": -1, "iInfo.ifout": -1 } },
// Take only the "first" array element per document
{ "$group": {
"_id": "$_id",
"Iifout": { "$first": "$iInfo.ifout" },
"Iiferror": { "$first": "$iInfo.iferror" },
"Iifdes": { "$first": "$iInfo.ifdes" },
"Iifin": { "$first": "$iInfo.ifin" }
}},
// Group to push those results as an array
{ "$group": {
"_id": "$_id",
"iInfo": {
"$push": {
"ifout": "$Iifout",
"iferror": "$Iiferror",
"Iifdes": "$Iifdes",
"Iifin": "$Iifin"
}
}
}}
])
我按如下方式编写java代码,但它不能正常工作
BasicDBObject cmdBody = new BasicDBObject("aggregate",
collectionRealtime.toString());
pipeline.add(new BasicDBObject("$limit", 10));
pipeline.add(new BasicDBObject("$unwind", "$iInfo"));
pipeline.add(new BasicDBObject("$sort", new BasicDBObject(
"iInfo.ifout", -1)));
cmdBody.put("pipeline", pipeline);
当我在java代码上面运行时,它会显示我的所有嵌套输出,带有sort,但不显示在group和limit not work中。它会显示所有文档
共 (0) 个答案