我有一个像这样的MongoDB文档:
{
"_id": ObjectId("5589044a7019e802d3e9dbc5"),
"sessionId": LUUID("f49d4280-ced0-9246-a3c9-a63e68e1ed45"),
"teamId": LUUID("6ef7d1a8-f842-a54c-bd8c-daf6481f9cfc"),
"variableId": LUUID("59d1b512-eee2-6c4b-a5b5-dda546872f55"),
"values": {
"725400": 691.0000000000000000,
"725760": 686.0000000000000000,
"726120": 683.0000000000000000,
"726480": 681.0000000000000000,
"726840": 679.0000000000000000,
"727200": 678.0000000000000000,
"727560": 677.0000000000000000,
"727920": 676.0000000000000000
},
"variableType": 2,
"isSet": false,
"teamNumber": 2,
"simPageIds": []
}
我有一个场景,我必须从我的文档的"values"
属性中删除特定属性。例如,我想从"727920"
属性中删除值"values"
。
由于"Values"
不是数组,因此我无法在此使用$pull
。我需要的是删除
"727920" : 676.0000000000000000
的 "values"
。
这样做的正确方法是什么?
答案 0 :(得分:8)
使用$unset,如下所示:
db.collectionName.update({},{"$unset":{"values.727920":""}})
修改强> 要更新多个文档,请使用update options,如:
db.collectionName.update({},{"$unset":{"values.727920":""}},{"multi":true})