mongoDB中批量修改字段
// 为每一个文章文档新增一个image_count字段,用于记录此文章包含的图片个数
db['test.articles'].find({'title':'wfc test'}).forEach( function(thisArticle){
// 这里要强制转为整形,否则会变成浮点数
// 要用NumberInt转换为整形,用parseInt得到依然是浮点数
imageCount = NumberInt( thisArticle['article_images'].length )
db['test.articles'].update({'_id':thisArticle['_id']}, {$set:{'image_count':imageCount}} )
}) // 比较精简干练的写法
db.test.articles.find({'title':'wfc test'}).forEach( function(thisArticle){
thisArticle.image_count = NumberInt( thisArticle.article_images.length )
db.test.articles.save(thisArticle)
}) // 将文档的字段放入嵌套数组后,再删除该字段(数据结构修改)
db['test.game'].find({'article_image':{$exists:0}}).forEach( function(thisArticle){
articleImage = {'remote':thisArticle.game_icon, 'local':thisArticle.game_local_icon,
'original':thisArticle.game_remote_icon, 'upload':thisArticle.icon_upload}
thisArticle.image_upload = thisArticle.icon_upload
thisArticle.modify_time = thisArticle.spider_time
thisArticle.article_image = []
thisArticle.article_image.push(articleImage)
delete thisArticle.game_icon
delete thisArticle.game_local_icon
delete thisArticle.game_remote_icon
delete thisArticle.icon_upload
db['test.game'].save(thisArticle)
}) // 按名称分组统计
db['test.articles'].group({
key:{'name':1},
condition:{'name':{$exists:1}},
$reduce:function(curr, result) {
result.total += 1
},
initial:{total:0},
})
mongoDB中批量修改字段的更多相关文章
- 如何在Protel99se中批量修改元件的封装
有时候需要批量修改元件的封装,可在原理图和PCB中批量修改.本文以批量修改电阻AXIAL0.3 的封装为AXIAL0.4 为例. 1. 在原理图中批量修改1.1. 方法1双击需要修改封装的其中一个元件 ...
- Oracle 批量修改字段长度
Oracle 批量修改字段长度 SELECT 'alter table '||a.table_name||' MODIFY '||A.COLUMN_NAME||' VARCHAR2(100);' ...
- mysql 批量修改字段方法
一.正式环境操作注意事项: .关闭应用访问或者设置数据库只读 mysql设为只读方法: 开启只读: mysql> show global variables like "%read_o ...
- 在Linux中批量修改字符串的命令
昨天一个朋友忽然问我,在Linux下如何批量修改字符串,当时瞬间懵逼了,完全想不起来....... 今天特意的重温了一下Linux下的一些常用命令,并将这个遗忘的批量修改字符串的命令记录下来(资料来自 ...
- Word 中批量修改所有表格格式样式
1. 引言 我们在使用Word排版编写书籍时候,可能会带有许多表格,上百,甚至上千个表格都是有可能的.这么多的表格对于后期的样式修改是非常不利的,有什么好的方法能够一次性修改文档中所有的表格,将其统一 ...
- mysql update语句,修改字段,,或者是批量修改字段
更新一个字段,在它的后面加一个字符串,不查询数据库得到这个字段值 怎么添加?? 例如: 我的test表,有个user字段,我现在想在它后面加了另一个用户的名字 我在mysql数据库这样写 UPDATE ...
- mongodb中批量将时间戳转变通用日期格式
1,官网提供的mongodb遍历脚本: 官方文档地址:https://docs.mongodb.org/manual/tutorial/remove-documents/ >var arr = ...
- 【转载】eclipse中批量修改Java类文件中引入的package包路径
原博客地址:http://my.oschina.net/leeoo/blog/37852 当复制其他工程中的包到新工程的目录中时,由于包路径不同,出现红叉,下面的类要一个一个修改包路径,类文件太多的话 ...
- [Word]中批量修改图片大小和缩放比例方法
最近小编遇到一个问题:需要将一篇厘米.打开.宏名起好了,单击"创建"进入.返回word,工具-宏-宏(或者直接按Alt+F8),再次进入宏的界面,选择刚才编辑好的宏,并单击&quo ...
随机推荐
- Lumen migration(数据库协同)
建立迁移文件/新建表文件 php artisan make:migration create_users_table 添加字段 php artisan make:migration add_colum ...
- JSON Extractor/jp@gc - JSON Path Extractor 举例2
测试描述 使用json返回结果做校验 测试步骤 1.配置http请求 2.根据结果树返回的json,取值 { "status_code":200, "message&qu ...
- 《从零开始学Swift》学习笔记(Day 21)——函数返回值
原创文章,欢迎转载.转载请注明:关东升的博客 返回值3种形式:无返回值.单一返回值和多返回值. 无返回值函数 所谓无返回结果,事实上是Void类型,即表示没有数据的类型. 无返回值函数的语法格式有如下 ...
- Anker—工作学习笔记
1.前言 最近在项目中用nginx做反向代理,需要动态生成nginx的配置.大概流程是用户在页面上新增域名.http或https协议以及端口信息,后台会根据域名自动生成一个nginx的server配置 ...
- debug_backtrace final catch
<?php function backtrace_str(){ $str = ''; $w = 0; $backtrace = debug_backtrace(); foreach($backt ...
- iOS 多线程之 NSOperation 的基本使用
1.NSOperation,NSOperationQueue 简介 NSOperation,NSOperationQueue是苹果提供给我们的一套多线程解决方案.实际上 NSOperation.NSO ...
- 001-Java®语言规范、Java平台标准版文档、JVM概述
一.概述 相关api地址:JDK10 JDK 9 JDK 8 JDK 7 JDK 6 Java语言和虚拟机规范: https://docs.oracle.com/javase/spec ...
- 高斯过程(GP)
随机过程基本概念: 随机过程是一个比随机变量更广泛的概念.在概率论中,通常研究一个或多个这样有限个数的随机变量,即使在大数定律和中心极限定理中考虑了无穷多个随机变量,但也要假设随机变量之间互相独立.而 ...
- php 计算器的例子
php实现的计算器的例子,代码如下: <html> <head> <title>PHP实现简单计算器-www.jbxue.com</t ...
- java动手动脑解析
1. 类是java的最小单位,java的程序必须在类中才能运行 2. java函数加不加static有何不同 java中声明为static的方法称为静态方法或类方法.静态方法可以直接调用静态方法,访问 ...