【问题标题】:How to update an array of documents with an array of values in mongoDB?如何使用 mongoDB 中的值数组更新文档数组?
【发布时间】:2020-09-12 01:09:14
【问题描述】:

我有一个产品集合,客户发布和订单请求以及一个对象数组,每个对象都包含_id产品(objectId)和他购买的数量。

[
{producId: "dshsdsdh72382377923",
quantity: 20
},
{producId: "dsh673sdh72382377923",
quantity: 10
},
{producId: "hjddjkdjkdj676372373",
quantity: 5
},
]

我想查询产品集合并以客户购买的数量减少(更新)每个产品的 numberInStock ! 我该怎么做?

【问题讨论】:

    标签: javascript mongodb mongoose


    【解决方案1】:

    根据用户购买的商品数量构建动态查询。选择产品productId,数量减少customerValue

    let customerValue = 4; // Let's say the customer bought 4 items
    let query = {};
    query['quantity'] = -customerValue;
    db.collection.updateOne(
     {producId : "hjddjkdjkdj676372373"},
     {$inc: query}
    );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-04
      • 1970-01-01
      • 2021-07-20
      • 2016-12-31
      • 2021-12-29
      • 2017-06-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多