MongoDB 里面的小需求
当把数据导入mongodb里面的时候,我们可以没有对脏数据处理就直接导入进去了,那么我们需要对导入的数据需要删除脏数据,具体操作如下:
db.report.update({
"需要删除的字段": {
"$exists": true
}
}, {
"$unset": {
"需要删除的字段":null
}
}, {
multi: true
});
在Robot里面执行上面的操作就可以 删除对应的脏数据。
下面关于mongodb里面当我们需要修改某一个字段的name时候,需要执行下面的操作:
db.report.update({}, {$rename: {"旧的字段": "新的字段"}}, false,true)
对于上面执行语句的解释:
db.collection.update(
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)
query : update的查询条件,类似sql update查询内where后面的;
update : update的对象和一些更新的操作符(如
,
,
,inc…)等,也可以理解为sql update查询内set后面的;
upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
writeConcern :可选,抛出异常的级别。