如何在mongodb的数组中,根据指定字段查找到对应的对象,并在该对象下添加字段?
高洛峰
高洛峰 2016-11-19 13:26:48
0
1
1036

本人初次使用mongodb,现在有一个需求,一条文档中有数组,怎么根据数组里边的记录的某个字段找到这条记录,然后在这条记录里添加字段呢?文字描述可能有点拗口,我们看图

wKiom1guzoqRzi9yAABydag783E719.jpg

如图所示,我想通过url查询到红色圈出的那个{}对应的内容,然后在这里边插入一个新的字段,插入后类似这样子的结构:

   { "_id" : ObjectId("582f19467ccafdce1cb124d1"),
    "categories" : [
            {
                    "title" : "移动电源",
                    "url" : "https://list.jd.com/list.html?cat=9987,830,13658",
                    "newFiled":"newValue"
            }
      ]
   }

请教高手们,这个应该怎么实现呢?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

reply all(1)
学霸

我直接上mongo命令行了啊。

db.collection.update({"categories.title":"移动电源"},{"$set":{"categories.$.newFiled":"newValue"}})

这样子就会对categoryies下面的元素中title的值为 移动电源 的元素,设置newFiled值为newValue 只能单个设置。

至于对应的java代码我就不懂了,不用java ^-^


Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template