美文网首页
mongdb如何更新数组中元素

mongdb如何更新数组中元素

作者: 骚噜噜 | 来源:发表于2018-07-05 10:25 被阅读0次
数组更新操作符 Array Update Operators
只能用在键值为数组的键上的数组操作。
$ (query)
语法: { "<array>.$" : value }
当对数组字段进行更新时,且没有明确指定的元素在数组中的位置,我们使用定位操作符$标识一个元素,数字都是以0开始的。

示例说明:
users集合

{
    "_id" : ObjectId("5b3d68eb7bd10a0008c1e3e6"),
    "username" : "aaa",
    "password" : "88316675d7882e3fdbe066000273842c",
    "role" : ObjectId("5a759e69cfcd053fc6dd5a27"),
    "nickname" : "a",
    "mail" : "",
    "phone" : "",
    "creator" : "admin",
    "update_date" : null,
    "space" : [ 
        {
            "end_time" : ISODate("2018-08-03T07:38:57.388Z"),
            "start_time" : ISODate("2018-07-04T07:38:57.388Z"),
            "size" : 500,
            "type" : 1
        }
    ],
    "status" : "0",
    "create_date" : ISODate("2018-07-05T00:40:11.061Z"),
    "delete_flag" : "0",
    "__v" : 0
}

更新所有users中space数组中第一个元素size,由500更新为1024*20

db.getCollection('users').update({"delete_flag":"0"},{$set:{"space.0.size":1024*20}},{multi:true})

相关文章

网友评论

      本文标题:mongdb如何更新数组中元素

      本文链接:https://www.haomeiwen.com/subject/rxiuuftx.html