db.createCollection() — MongoDB Manual 3.4
更新多条
db.getCollection("表名").updateMany({筛选条件},{$set:{"enable":true}})
循环更新
var d = db.getCollection("test1").find({})
d.forEach((e) => {
var c = e.cc
print(c)
var reStr = c.replace("http", "https")
print(reStr)
db.getCollection("test1").update({ _id: e._id }, { $set: { "cc": reStr } })
})
循环插入
var d = db.getCollection('logEntity').find({})
while (d.hasNext()) {
var p = d.next();
var p2 = db.getCollection('order').findOne({ "orderId": p.orderId });
if (p2 != null) {
printjson(p2);
db.getSiblingDB('test_dev2').getCollection('test2').insert(p2)
}
}
分组求和,和大于1的字段
$accountNumber分组字段
db.getCollection('account').aggregate([{ $group: { _id: '$accountNumber', count: { $sum: 1 } } }, { $match: { count: { $gt: 1 } } }], { allowDiskUse: true })
分组求和2
db = db.getSiblingDB("库名");
db.getCollection("表名").aggregate(
[
{
"$match" : {
"筛选字段名" : "680217b2bd624e4395c578cb918bb832"
}
},
{
"$group" : {
"_id" : "$merchantId",//分组字段
"count" : {
"$sum" : 1.0
}
}
},
{
"$match" : {
"count" : {
"$gt" : 1.0//筛选求和上面count大于1
}
}
}
],
{
"allowDiskUse" : false
}
);