mongodb循环更新插入

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
    }
);

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值