java - 如何在mongodb的数组中,根据指定字段查找到对应的对象,并在该对象下添加字段?

 重庆制造漫画社 发布于 2022-10-26 10:36

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

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

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

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

2 个回答
  • 你楼上答案是正确的,顶楼上

    2022-10-27 00:51 回答
  • 我直接上mongo命令行了啊。

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

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

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

    2022-10-27 00:51 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有