相关疑难解决方法(0)

如何在嵌入式阵列中更新后取回新值?

鉴于以下MongoDB集合:

{
    "_id": ObjectId("56d6a7292c06e85687f44541"),
    "name": "My ranking list",
    "rankings": [
        {
            "_id": ObjectId("46d6a7292c06e85687f55542"),
            "name": "Ranking 1",
            "score": 1
        },
        {
            "_id": ObjectId("46d6a7292c06e85687f55543"),
            "name": "Ranking 2",
            "score": 10
        },
        {
            "_id": ObjectId("46d6a7292c06e85687f55544"),
            "name": "Ranking 3",
            "score": 15
        },
    ]
}
Run Code Online (Sandbox Code Playgroud)

以下是我如何提高给定排名的得分:

db.collection.update(
    { "_id": ObjectId("56d6a7292c06e85687f44541"), "rankings._id" : ObjectId("46d6a7292c06e85687f55543") },
    { $inc : { "rankings.$.score" : 1 } }
);
Run Code Online (Sandbox Code Playgroud)

我如何获得新的分数值?在上一个查询中,我将第二个排名从10增加到11 ...如何在更新后获得这个新值?

mongodb mongodb-query

7
推荐指数
1
解决办法
2430
查看次数

标签 统计

mongodb ×1

mongodb-query ×1