返回顶部
首页 > 资讯 > 数据库 >mongodb使用_遍历列表中的元素,作为变量,循环修改mongodb中的字段
  • 393
分享到

mongodb使用_遍历列表中的元素,作为变量,循环修改mongodb中的字段

摘要

一、问题描述:   需要将工作界面上的一些已经离职的用户状态改为失效,并备注为离职 二、需要准备/拿到手的工具/条件/数据:   1.已离职人员名单(excel格式)   2.任意mongoDB工具(笔者使用的是NoSQLBooster f

一、问题描述:

  需要将工作界面上的一些已经离职的用户状态改为失效,并备注为离职

二、需要准备/拿到手的工具/条件/数据:

  1.已离职人员名单(excel格式)

  2.任意mongoDB工具(笔者使用的是NoSQLBooster for MonGodb)

  3.连接好的mongodb数据库(有些网络/策略不同,直连无法成功的,可以尝试使用mongodb中的ssh,在笔者的连接工具/Connections/Edit/SSH中可以进行设置)

修改mongodb中列表中多个元素,遍历其中的元素,作为变量,执行mongodb的修改

  4.Notepad++ 软件

三、解决步骤:

  1.需要将execl格式的人员名单取出放入自己设定的列表中(如arr = [" ", " " ]):

    1.1.选取所需的列数据,复制后,粘贴到新建excel表格中;  # 特别注意:粘贴时,应选择第一个单元格,然后右击,在弹出的窗口中,选择‘选择性粘贴’,再选择‘转置"

 

     1.2.将排成一行的数据另存到桌面上,保存类型选择csv(逗号分隔),后续弹出的窗口一直选是(可能会说不兼容什么的,不管,关闭时弹出的窗口也选是)

 

    1.3.给csv文件中的数据添加单/双引号: 右键点击桌面上的csv文件,选择“edit with Notepad++"打开,

      ctrl+h -> 勾上正则 -> 查找逗号:, -> 替换成:",";

      ctrl+h -> 勾上正则 -> 查找行头:^ -> 替换成:";

      ctrl+h -> 勾上正则 -> 查找行尾:$ -> 替换成:";(第三步可能是多余的)

    1.4.复制处理完成后的数据,放入列表中,即:arr = ["zhangsan","lisi"]

  2.进入NosqlBooster for Mongodb中,选择需要修改的数据所在的库和表,输入以下语句,即可更新人员状态:

    var arr = ["zhangsan","lisi"];
    for (var i=0; i        db.USER.update({"code": arr[i]}, {"$set": {"status" : "invalid", "memo" : "离职"}});  # USER、 "status"、"memo"为数据库对应的表名、人员状态、备注的字段名
    }

 

 

 四、所用到的技巧/技术,以及参考链接:

   1.excel数据转为带双引号的数据: https://www.PHPfans.net/ask/quiz1/92901015155.html

   2.mongdb的循环修改(笔者修改的不是一条语句中的多个相同值,而是多条语句中的一个值):Https://www.jianshu.com/p/1f02dcba779c  

    # 若想修改的一条语句中的多个相同值,可参考https://blog.csdn.net/xc_zhou/article/details/80994787或https://blog.csdn.net/jsdxshi/article/details/72841283

您可能感兴趣的文档:

--结束END--

本文标题: mongodb使用_遍历列表中的元素,作为变量,循环修改mongodb中的字段

本文链接: https://lsjlt.com/news/2651.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作