有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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) 个答案