如何删除mongodb集合中的字段?

时间:2018-12-18 04:09:32

标签: javascript html node.js database mongodb

我在mongodb中有一个数据收集,如下所示:

{
    { "_id" : ObjectId("1"), "name" : "ABC", "group" : [ObjectId("11"), ObjectId("12"), ObjectId("13")]}
    { "_id" : ObjectId("2"), "name" : "DEF", "group" : [ObjectId("21"), ObjectId("22"), ObjectId("23")]}
}

我想删除文档ObjectId("11")字段中的group  ObjectId("1")

我尝试了以下代码:

aId = "1" 
bId = "11"
db.collection.updateOne({ _id: ObjectId(aId) }, { $pull: { group: { _id: ObjectId(bId) } } })

但是失败了。

我也尝试过:

aId = "1" 
bId = "11"
db.collection.updateOne({ _id: aId }, { $pull: { group: { _id: bId } } })

但是仍然无法删除它。

我的代码有什么问题吗?

1 个答案:

答案 0 :(得分:0)

像这样使用$unset

db.products.update(
{ sku: "unknown" },
{ $unset: { quantity: "", instock: "" } })

此代码将从字段sku值为未知的产品集合的第一个文档中删除数量和库存字段。 For more info