假如说咱们这个集合里面的文档都是这种格式:ide
{ "_id" : ObjectId("5c177b84f4e84940e0bd578d"), "name" : "suhaozhi", "pwd" : "suhaozhi", "phone" : [ { "phone_num" : "13333333333", "type" : "cmcc" }, { "phone_num" : 15555555555, "type" : "chinanet" } ], "type" : "chinanet" }spa
如今须要搜索出phone字段中type子字段的值为CMCC的记录:文档
db.tmp.find({phone:{$elemMatch:{cs:"cmcc"}}});it
若是要修改掉上面这个文档phone字段中phone_num 为 13333333333 对应的 type字段 为chinanet:class
db.tmp.update({"name":"suhaozhi","phone.phone_num":"13333333333"},{$set:{"phone.$.cs":"chinanet"}});date
若是想在内嵌文档中,再插入一条数据:搜索
db.tmp.update({"name":"suhaozhi"},{$push:{phone:{"phone_num" : "23333", "type" : "cmcc"}}})数据
从内嵌文档中删除一条数据:
db