mongodb 批量修改
db.getCollection('').find({}).forEach(
function(item) {
item.date = item.date.replace("2018-11-23","2018-11-24");
db.getCollection('').save(item);
}
)
db.Goods.find().forEach(
function(item){
if(!item.goodsCode.indexOf("ABCD")){
var tempGoodId=item._id;
var tempGoodCode=item.goodsCode;
var temp=db.Goods.findOne({"goodsCode":{"$regex":"^"+tempGoodCode+".+"}});
if(temp){
// print(tempGoodCode+"="+item._id);
var cursor=db.GoodAttr.find({"goodsId":tempGoodId});
cursor.forEach(function(a){
print(a);
})
}
}
}
)
、下面集合中的seq类型为double,想修改为int。
{
"_id" : ObjectId("592e94fee820cc1813f0b9a2"),
"privateAttrs" : [
{
"attrId" : "",
"seq" :
},
{
"attrId" : "",
"seq" :
}
]
}
{
"_id" : ObjectId("592e94fee820cc1813f0b9a3"),
"privateAttrs" : [
{
"attrId" : "",
"seq" :
}
]
}
、通过forEach遍历数组:
db.category.find().forEach(
function(item) {
item.privateAttrs.forEach(
function(arr, index) {
item.privateAttrs[index].seq = new NumberInt(item.privateAttrs[index].seq);
}
);
db.category.save(item);
}
)
、forEach 说明
forEach方法中的function回调有三个参数: 第一个参数是遍历的数组内容,第二个参数是对应的数组索引,第三个参数是数组本身
---------------------
作者:__時__
来源:CSDN
原文:https://blog.csdn.net/jsdxshi/article/details/72841283
版权声明:本文为博主原创文章,转载请附上博文链接!
mongodb 批量修改的更多相关文章
- .Net MongoDB批量修改集合中子集合的字段
环境:.Net Core 3.1 (需要导入.Net MongoDB的驱动) 模型 /// <summary> /// 收藏 /// </summary> public cla ...
- MongoDB批量更新和批量插入的方式
最近,在调试代码中发现向MongoDB插入或者更新文档记录时若是多条的话都是采用for循环操作的,这样的处理方式会造成数据操作耗时,不符合批量处理的原则:对此,个人整理了一下有关MongoDB的批量更 ...
- Tapdata Cloud 2.1.2 来啦:大波细节已就绪!字段类型可批量修改、支持微信扫码登录、新增支持 Vika 为目标
Tapdata Cloud cloud.tapdata.net 让数据实时可用 Tapdata Cloud 是国内首家异构数据库实时同步云平台,目前支持 Oracle.MySQL.PG.SQL Ser ...
- mac linux rename命令行批量修改文件名
我的mac使用命令行批量修改名字时发现居然没有rename的指令: zsh: command not found: rename 所以使用HomeBrew先安装一下: ➜ ~ brew install ...
- MYSQL批量修改表前缀与表名sql语句
修改表名 ALTER TABLE 原表名 RENAME TO 新表名; 一句SQL语句只能修改一张表 show tables; 1. SELECT CONCAT( 'ALTER TABLE ', ta ...
- 使用powershell批量修改文本为utf8
根据上一篇powershell生成pro的方法,增加一个批量修改文本文件为utf8格式的方法 $incPath = dir -filter "*.c" -Recurse $temp ...
- nodejs 批量修改、删除
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAB4AAAAQhCAIAAABDaAVHAAAgAElEQVR4nOydeXxU5aH359733vd9b/ ...
- iOS --- DIY文件名批量修改
批量修改文件名: // 1.创建文件管理 NSFileManager *filemanager =[NSFileManager defaultManager]; // 2. 获得所有文件夹路径 NSS ...
- ansible非root用户批量修改root密码
前言: 由于线上服务器密码长久没有更新,现领导要求批量更换密码.线上的之前部署过salt,但由于各种因素没有正常使用. 使用自动化工具批量修改的计划搁浅了,后来领导给了个python多线程修改密码脚本 ...
随机推荐
- python-面向对象-01_面向对象(OOP)基本概念
面向对象(OOP)基本概念 面向对象编程 —— Object Oriented Programming 简写 OOP 目标 了解 面向对象 基本概念 01. 面向对象基本概念 我们之前学习的编程方式就 ...
- metasploit的安装
//直接安装 apt-get update apt-get install metasploit-framework //连接和安装postgresql apt-get install postgre ...
- 用xtrabackup2.4备份mysql5.6.30一直显示log scanned up to
用xtrabackup2.4备份mysql5.6.30一直显示log scanned up to 一直处于log scanned up to,只能ctrl+c强制终止备份 没有大事务 停止xtraba ...
- drf权限组件
1.简介 设置哪种用户的权限可以做什么事 2.用法 在MyAuth文件编写权限类, from rest_framework.permissions import BasePermission 代码如下 ...
- eclipse中Tomcat服务器缓存位置,以及清理Tomcat缓存
在Eclipse中进行Web开发,一般都会将项目直接在Eclipse中的Tomcat服务器运行,有时候修改了程序和页面之后,运行结果还是原来的 tomcat服务器中缓存的程序或者页面,需要清理缓存之后 ...
- k8s 高级调度 亲和力和反亲和力、绑定标签、污点容忍污点
通过标签绑定 spec: nodeSelector: bigdata-node: bigdata containers: - env: pod只能运行在有bigdata-node: bigdata 标 ...
- GitHub上个最有意思的项目合集(技术清单系列)
没有1K以上的星星都不好意思推荐给大家!林子大了,啥项目都有,这里给大家搜罗了10个Github上有趣的项目.如果你就着辣椒食用本文,一定会激动的流下泪来...... 1.一行代码没有 | 18k s ...
- PHP面试准备
框架:Laravel,Yii,Tp (1)纵向不同版本及框架本身特性 (2)横向对比,不同框架的优缺点 面向对象编程: (1)面向对象的基本特征:封装,继承,多态 (2)设计模式:单例模式,工厂模式, ...
- vmware 12
下载地址 (linux:https://download3.vmware.com/software/wkst/file/VMware-Workstation-Full-12.1.1-3770994.x ...
- 判断数组对象里面的某个属性全部为true才执行下一步操作
比如数据[ {name:'张三',isshow:'false'},name:'李四',isshow:'false'}, ] 这里是自己写的验证,没用elemten的 如果有2张票,需要刷2张身份证,则 ...