1. 程式人生 > >3.mongodb 對於內嵌文件的增刪改查

3.mongodb 對於內嵌文件的增刪改查




假如說我們這個集合裡面的文件都是這種格式:


{ "_id" : ObjectId("5c177b84f4e84940e0bd578d"), "name" : "suhaozhi", "pwd" : "suhaozhi", "phone" : [ { "phone_num" : "13333333333", "type" : "cmcc" }, { "phone_num" : 15555555555, "type" : "chinanet" } ], "type" : "chinanet" }



現在需要搜尋出phone欄位中type子欄位的值為CMCC的記錄:


db.tmp.find(

{phone:{$elemMatch:{cs:"cmcc"}}});




如果要修改掉上面這個文件phone欄位中phone_num 13333333333 對應的 type欄位 chinanet


db.tmp.update({"name":"suhaozhi","phone.phone_num":"13333333333"},{$set:{"phone.$.cs":"chinanet"}});



如果想在內嵌文件中,再插入一條資料:

db.tmp.update({"name":"suhaozhi"},{$push:{phone:{"phone_num" : "23333",

 "type" : "cmcc"}}})


從內嵌文件中刪除一條資料: